55d916:	0f 57 c0             	xorps  %xmm0,%xmm0
55d919:	8b 7d e4             	mov    -0x1c(%ebp),%edi
55d91c:	ba c0 bd f0 ff       	mov    $0xfff0bdc0,%edx
55d921:	0f 11 06             	movups %xmm0,(%esi)
55d924:	66 0f d6 46 10       	movq   %xmm0,0x10(%esi)
55d929:	c7 46 18 00 00 00 00 	movl   $0x0,0x18(%esi)
55d930:	89 46 04             	mov    %eax,0x4(%esi)
55d933:	8b 45 d4             	mov    -0x2c(%ebp),%eax
55d936:	89 3e                	mov    %edi,(%esi)
55d938:	c6 46 11 01          	movb   $0x1,0x11(%esi)
55d93c:	8b 48 48             	mov    0x48(%eax),%ecx
55d93f:	85 c9                	test   %ecx,%ecx
55d941:	74 15                	je     0x55d958
55d943:	8b 47 10             	mov    0x10(%edi),%eax
55d946:	33 d2                	xor    %edx,%edx
55d948:	83 c0 0c             	add    $0xc,%eax
55d94b:	39 08                	cmp    %ecx,(%eax)
55d94d:	74 09                	je     0x55d958
55d94f:	90                   	nop
55d950:	8d 40 10             	lea    0x10(%eax),%eax
55d953:	42                   	inc    %edx
55d954:	39 08                	cmp    %ecx,(%eax)
55d956:	75 f8                	jne    0x55d950
55d958:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
55d95b:	03 d2                	add    %edx,%edx
55d95d:	8b 47 10             	mov    0x10(%edi),%eax
55d960:	8b 49 3c             	mov    0x3c(%ecx),%ecx
55d963:	8b 04 d0             	mov    (%eax,%edx,8),%eax
55d966:	89 41 04             	mov    %eax,0x4(%ecx)
55d969:	8b 45 d4             	mov    -0x2c(%ebp),%eax
55d96c:	89 45 ec             	mov    %eax,-0x14(%ebp)
55d96f:	8b 87 78 01 00 00    	mov    0x178(%edi),%eax
55d975:	89 45 f0             	mov    %eax,-0x10(%ebp)
55d978:	8d 45 e8             	lea    -0x18(%ebp),%eax
55d97b:	89 87 78 01 00 00    	mov    %eax,0x178(%edi)
55d981:	8d 7e 08             	lea    0x8(%esi),%edi
55d984:	8d 45 f8             	lea    -0x8(%ebp),%eax
55d987:	89 75 e8             	mov    %esi,-0x18(%ebp)
55d98a:	50                   	push   %eax
55d98b:	8b 45 e0             	mov    -0x20(%ebp),%eax
55d98e:	57                   	push   %edi
55d98f:	ff 75 c4             	push   -0x3c(%ebp)
55d992:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
55d999:	ff 75 d8             	push   -0x28(%ebp)
55d99c:	ff 70 0c             	push   0xc(%eax)
55d99f:	ff 75 e4             	push   -0x1c(%ebp)
55d9a2:	ff 55 cc             	call   *-0x34(%ebp)
55d9a5:	8b 4d f0             	mov    -0x10(%ebp),%ecx
55d9a8:	8b d0                	mov    %eax,%edx
55d9aa:	8b 45 e4             	mov    -0x1c(%ebp),%eax
55d9ad:	83 c4 18             	add    $0x18,%esp
55d9b0:	89 55 cc             	mov    %edx,-0x34(%ebp)
55d9b3:	89 88 78 01 00 00    	mov    %ecx,0x178(%eax)
55d9b9:	83 fa 07             	cmp    $0x7,%edx
55d9bc:	75 47                	jne    0x55da05
55d9be:	8b c8                	mov    %eax,%ecx
55d9c0:	80 79 51 00          	cmpb   $0x0,0x51(%ecx)
55d9c4:	75 45                	jne    0x55da0b
55d9c6:	80 79 52 00          	cmpb   $0x0,0x52(%ecx)
55d9ca:	75 3f                	jne    0x55da0b
55d9cc:	83 b9 bc 00 00 00 00 	cmpl   $0x0,0xbc(%ecx)
55d9d3:	c6 41 51 01          	movb   $0x1,0x51(%ecx)
55d9d7:	7e 0a                	jle    0x55d9e3
55d9d9:	c7 81 10 01 00 00 01 	movl   $0x1,0x110(%ecx)
55d9e0:	00 00 00
55d9e3:	ff 81 18 01 00 00    	incl   0x118(%ecx)
55d9e9:	33 c0                	xor    %eax,%eax
55d9eb:	66 89 81 1c 01 00 00 	mov    %ax,0x11c(%ecx)
55d9f2:	8b 81 f4 00 00 00    	mov    0xf4(%ecx),%eax
55d9f8:	85 c0                	test   %eax,%eax
55d9fa:	74 0f                	je     0x55da0b
55d9fc:	c7 40 0c 07 00 00 00 	movl   $0x7,0xc(%eax)
55da03:	eb 06                	jmp    0x55da0b
55da05:	85 d2                	test   %edx,%edx
55da07:	74 5b                	je     0x55da64
55da09:	8b c8                	mov    %eax,%ecx
55da0b:	8b 45 f8             	mov    -0x8(%ebp),%eax
55da0e:	85 c0                	test   %eax,%eax
55da10:	75 25                	jne    0x55da37
55da12:	8b 7d d0             	mov    -0x30(%ebp),%edi
55da15:	57                   	push   %edi
55da16:	68 38 b9 6b 00       	push   $0x6bb938
55da1b:	51                   	push   %ecx
55da1c:	e8 1f 35 fd ff       	call   0x530f40
55da21:	83 c4 0c             	add    $0xc,%esp
55da24:	89 03                	mov    %eax,(%ebx)
55da26:	56                   	push   %esi
55da27:	ff 75 e4             	push   -0x1c(%ebp)
55da2a:	e8 41 39 fc ff       	call   0x521370
55da2f:	83 c4 08             	add    $0x8,%esp
55da32:	e9 3b 02 00 00       	jmp    0x55dc72
55da37:	50                   	push   %eax
55da38:	68 04 d0 6a 00       	push   $0x6ad004
55da3d:	51                   	push   %ecx
55da3e:	e8 fd 34 fd ff       	call   0x530f40
55da43:	ff 75 f8             	push   -0x8(%ebp)
55da46:	89 03                	mov    %eax,(%ebx)
55da48:	e8 43 d3 f8 ff       	call   0x4ead90
55da4d:	8b 7d d0             	mov    -0x30(%ebp),%edi
55da50:	83 c4 10             	add    $0x10,%esp
55da53:	56                   	push   %esi
55da54:	ff 75 e4             	push   -0x1c(%ebp)
55da57:	e8 14 39 fc ff       	call   0x521370
55da5c:	83 c4 08             	add    $0x8,%esp
55da5f:	e9 0e 02 00 00       	jmp    0x55dc72
55da64:	8b 07                	mov    (%edi),%eax
55da66:	85 c0                	test   %eax,%eax
55da68:	0f 84 01 02 00 00    	je     0x55dc6f
55da6e:	8b 55 e0             	mov    -0x20(%ebp),%edx
55da71:	0f 57 c0             	xorps  %xmm0,%xmm0
55da74:	66 0f d6 00          	movq   %xmm0,(%eax)
55da78:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
55da7f:	8b 0f                	mov    (%edi),%ecx
55da81:	8b 02                	mov    (%edx),%eax
55da83:	89 01                	mov    %eax,(%ecx)
55da85:	ff 42 08             	incl   0x8(%edx)
55da88:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
55da8f:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
55da93:	75 44                	jne    0x55dad9
55da95:	8b 45 d4             	mov    -0x2c(%ebp),%eax
55da98:	ff 30                	push   (%eax)
55da9a:	68 58 b9 6b 00       	push   $0x6bb958
55da9f:	ff 75 e4             	push   -0x1c(%ebp)
55daa2:	e8 99 34 fd ff       	call   0x530f40
55daa7:	56                   	push   %esi
55daa8:	89 03                	mov    %eax,(%ebx)
55daaa:	e8 d1 10 ff ff       	call   0x54eb80
55daaf:	8b 7d d0             	mov    -0x30(%ebp),%edi
55dab2:	83 c4 10             	add    $0x10,%esp
55dab5:	be 01 00 00 00       	mov    $0x1,%esi
55daba:	57                   	push   %edi
55dabb:	ff 75 e4             	push   -0x1c(%ebp)
55dabe:	e8 ad 38 fc ff       	call   0x521370
55dac3:	83 c4 08             	add    $0x8,%esp
55dac6:	8b c6                	mov    %esi,%eax
55dac8:	5f                   	pop    %edi
55dac9:	5e                   	pop    %esi
55daca:	5b                   	pop    %ebx
55dacb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
55dace:	33 cd                	xor    %ebp,%ecx
55dad0:	e8 05 3a 08 00       	call   0x5e14da
55dad5:	8b e5                	mov    %ebp,%esp
55dad7:	5d                   	pop    %ebp
55dad8:	c3                   	ret
55dad9:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
55dadc:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
55dae3:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
55daea:	8b 41 40             	mov    0x40(%ecx),%eax
55daed:	89 46 18             	mov    %eax,0x18(%esi)
55daf0:	33 c0                	xor    %eax,%eax
55daf2:	89 71 40             	mov    %esi,0x40(%ecx)
55daf5:	66 3b 41 2a          	cmp    0x2a(%ecx),%ax
55daf9:	0f 8d 70 01 00 00    	jge    0x55dc6f
55daff:	33 db                	xor    %ebx,%ebx
55db01:	89 5d dc             	mov    %ebx,-0x24(%ebp)
55db04:	8b 41 04             	mov    0x4(%ecx),%eax
55db07:	f6 44 18 10 04       	testb  $0x4,0x10(%eax,%ebx,1)
55db0c:	75 0a                	jne    0x55db18
55db0e:	bf ad 57 6e 00       	mov    $0x6e57ad,%edi
55db13:	89 7d e0             	mov    %edi,-0x20(%ebp)
55db16:	eb 1f                	jmp    0x55db37
55db18:	8b 14 18             	mov    (%eax,%ebx,1),%edx
55db1b:	8b ca                	mov    %edx,%ecx
55db1d:	8d 71 01             	lea    0x1(%ecx),%esi
55db20:	8a 01                	mov    (%ecx),%al
55db22:	41                   	inc    %ecx
55db23:	84 c0                	test   %al,%al
55db25:	75 f9                	jne    0x55db20
55db27:	2b ce                	sub    %esi,%ecx
55db29:	8d 79 01             	lea    0x1(%ecx),%edi
55db2c:	03 fa                	add    %edx,%edi
55db2e:	89 7d e0             	mov    %edi,-0x20(%ebp)
55db31:	0f 84 13 01 00 00    	je     0x55dc4a
55db37:	8b d7                	mov    %edi,%edx
55db39:	8d 4a 01             	lea    0x1(%edx),%ecx
55db3c:	0f 1f 40 00          	nopl   0x0(%eax)
55db40:	8a 02                	mov    (%edx),%al
55db42:	42                   	inc    %edx
55db43:	84 c0                	test   %al,%al
55db45:	75 f9                	jne    0x55db40
55db47:	2b d1                	sub    %ecx,%edx
55db49:	bb 00 00 00 00       	mov    $0x0,%ebx
55db4e:	81 e2 ff ff ff 3f    	and    $0x3fffffff,%edx
55db54:	89 55 c8             	mov    %edx,-0x38(%ebp)
55db57:	76 7b                	jbe    0x55dbd4
55db59:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
55db60:	8d 34 3b             	lea    (%ebx,%edi,1),%esi
55db63:	b8 06 00 00 00       	mov    $0x6,%eax
55db68:	85 f6                	test   %esi,%esi
55db6a:	0f 84 ce 00 00 00    	je     0x55dc3e
55db70:	bf 2c 6a 6b 00       	mov    $0x6b6a2c,%edi
55db75:	8a 0f                	mov    (%edi),%cl
55db77:	48                   	dec    %eax
55db78:	84 c9                	test   %cl,%cl
55db7a:	74 1b                	je     0x55db97
55db7c:	0f b6 16             	movzbl (%esi),%edx
55db7f:	0f b6 c9             	movzbl %cl,%ecx
55db82:	8a 89 20 2a 6b 00    	mov    0x6b2a20(%ecx),%cl
55db88:	3a 8a 20 2a 6b 00    	cmp    0x6b2a20(%edx),%cl
55db8e:	75 07                	jne    0x55db97
55db90:	47                   	inc    %edi
55db91:	46                   	inc    %esi
55db92:	85 c0                	test   %eax,%eax
55db94:	7f df                	jg     0x55db75
55db96:	48                   	dec    %eax
55db97:	85 c0                	test   %eax,%eax
55db99:	78 1c                	js     0x55dbb7
55db9b:	0f b6 06             	movzbl (%esi),%eax
55db9e:	0f b6 88 20 2a 6b 00 	movzbl 0x6b2a20(%eax),%ecx
55dba5:	0f b6 07             	movzbl (%edi),%eax
55dba8:	0f b6 80 20 2a 6b 00 	movzbl 0x6b2a20(%eax),%eax
55dbaf:	2b c1                	sub    %ecx,%eax
55dbb1:	0f 85 81 00 00 00    	jne    0x55dc38
55dbb7:	8b 7d e0             	mov    -0x20(%ebp),%edi
55dbba:	85 db                	test   %ebx,%ebx
55dbbc:	74 07                	je     0x55dbc5
55dbbe:	80 7c 3b ff 20       	cmpb   $0x20,-0x1(%ebx,%edi,1)
55dbc3:	75 76                	jne    0x55dc3b
55dbc5:	8a 44 3b 06          	mov    0x6(%ebx,%edi,1),%al
55dbc9:	8b 55 c8             	mov    -0x38(%ebp),%edx
55dbcc:	84 c0                	test   %al,%al
55dbce:	74 04                	je     0x55dbd4
55dbd0:	3c 20                	cmp    $0x20,%al
55dbd2:	75 6a                	jne    0x55dc3e
55dbd4:	3b da                	cmp    %edx,%ebx
55dbd6:	7d 6f                	jge    0x55dc47
55dbd8:	33 c0                	xor    %eax,%eax
55dbda:	8d 0c 3b             	lea    (%ebx,%edi,1),%ecx
55dbdd:	38 41 06             	cmp    %al,0x6(%ecx)
55dbe0:	89 4d e0             	mov    %ecx,-0x20(%ebp)
55dbe3:	0f 95 c0             	setne  %al
55dbe6:	83 c0 06             	add    $0x6,%eax
55dbe9:	89 45 d8             	mov    %eax,-0x28(%ebp)
55dbec:	03 c3                	add    %ebx,%eax
55dbee:	3b c2                	cmp    %edx,%eax
55dbf0:	7f 21                	jg     0x55dc13
55dbf2:	8b 75 d8             	mov    -0x28(%ebp),%esi
55dbf5:	8b c6                	mov    %esi,%eax
55dbf7:	2b c7                	sub    %edi,%eax
55dbf9:	89 45 d8             	mov    %eax,-0x28(%ebp)
55dbfc:	8b f8                	mov    %eax,%edi
55dbfe:	66 90                	xchg   %ax,%ax
55dc00:	8a 04 0e             	mov    (%esi,%ecx,1),%al
55dc03:	8d 49 01             	lea    0x1(%ecx),%ecx
55dc06:	88 41 ff             	mov    %al,-0x1(%ecx)
55dc09:	8d 04 0f             	lea    (%edi,%ecx,1),%eax
55dc0c:	3b c2                	cmp    %edx,%eax
55dc0e:	7e f0                	jle    0x55dc00
55dc10:	8b 4d e0             	mov    -0x20(%ebp),%ecx
55dc13:	80 39 00             	cmpb   $0x0,(%ecx)
55dc16:	75 08                	jne    0x55dc20
55dc18:	85 db                	test   %ebx,%ebx
55dc1a:	7e 04                	jle    0x55dc20
55dc1c:	c6 41 ff 00          	movb   $0x0,-0x1(%ecx)
55dc20:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
55dc23:	8b 5d dc             	mov    -0x24(%ebp),%ebx
55dc26:	c7 45 d8 00 04 00 00 	movl   $0x400,-0x28(%ebp)
55dc2d:	8b 41 04             	mov    0x4(%ecx),%eax
55dc30:	66 83 4c 18 10 02    	orw    $0x2,0x10(%eax,%ebx,1)
55dc36:	eb 1e                	jmp    0x55dc56
55dc38:	8b 7d e0             	mov    -0x20(%ebp),%edi
55dc3b:	8b 55 c8             	mov    -0x38(%ebp),%edx
55dc3e:	43                   	inc    %ebx
55dc3f:	3b da                	cmp    %edx,%ebx
55dc41:	0f 8c 19 ff ff ff    	jl     0x55db60
55dc47:	8b 5d dc             	mov    -0x24(%ebp),%ebx
55dc4a:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
55dc4d:	8b 45 d8             	mov    -0x28(%ebp),%eax
55dc50:	0f b7 c0             	movzwl %ax,%eax
55dc53:	09 41 24             	or     %eax,0x24(%ecx)
55dc56:	8b 55 c4             	mov    -0x3c(%ebp),%edx
55dc59:	83 c3 14             	add    $0x14,%ebx
55dc5c:	0f bf 41 2a          	movswl 0x2a(%ecx),%eax
55dc60:	42                   	inc    %edx
55dc61:	89 55 c4             	mov    %edx,-0x3c(%ebp)
55dc64:	89 5d dc             	mov    %ebx,-0x24(%ebp)
55dc67:	3b d0                	cmp    %eax,%edx
55dc69:	0f 8c 95 fe ff ff    	jl     0x55db04
55dc6f:	8b 7d d0             	mov    -0x30(%ebp),%edi
55dc72:	8b 75 cc             	mov    -0x34(%ebp),%esi
55dc75:	57                   	push   %edi
55dc76:	ff 75 e4             	push   -0x1c(%ebp)
55dc79:	e8 f2 36 fc ff       	call   0x521370
55dc7e:	83 c4 08             	add    $0x8,%esp
55dc81:	8b c6                	mov    %esi,%eax
55dc83:	5f                   	pop    %edi
55dc84:	5e                   	pop    %esi
55dc85:	5b                   	pop    %ebx
55dc86:	8b 4d fc             	mov    -0x4(%ebp),%ecx
55dc89:	33 cd                	xor    %ebp,%ecx
55dc8b:	e8 4a 38 08 00       	call   0x5e14da
55dc90:	8b e5                	mov    %ebp,%esp
55dc92:	5d                   	pop    %ebp
55dc93:	c3                   	ret
55dc94:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
55dc97:	80 79 51 00          	cmpb   $0x0,0x51(%ecx)
55dc9b:	75 3d                	jne    0x55dcda
55dc9d:	80 79 52 00          	cmpb   $0x0,0x52(%ecx)
55dca1:	75 37                	jne    0x55dcda
55dca3:	83 b9 bc 00 00 00 00 	cmpl   $0x0,0xbc(%ecx)
55dcaa:	c6 41 51 01          	movb   $0x1,0x51(%ecx)
55dcae:	7e 0a                	jle    0x55dcba
55dcb0:	c7 81 10 01 00 00 01 	movl   $0x1,0x110(%ecx)
55dcb7:	00 00 00
55dcba:	ff 81 18 01 00 00    	incl   0x118(%ecx)
55dcc0:	33 c0                	xor    %eax,%eax
55dcc2:	66 89 81 1c 01 00 00 	mov    %ax,0x11c(%ecx)
55dcc9:	8b 81 f4 00 00 00    	mov    0xf4(%ecx),%eax
55dccf:	85 c0                	test   %eax,%eax
55dcd1:	74 07                	je     0x55dcda
55dcd3:	c7 40 0c 07 00 00 00 	movl   $0x7,0xc(%eax)
55dcda:	8b 7d d0             	mov    -0x30(%ebp),%edi
55dcdd:	57                   	push   %edi
55dcde:	51                   	push   %ecx
55dcdf:	e8 8c 36 fc ff       	call   0x521370
55dce4:	83 c4 08             	add    $0x8,%esp
55dce7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
55dcea:	b8 07 00 00 00       	mov    $0x7,%eax
55dcef:	5f                   	pop    %edi
55dcf0:	5e                   	pop    %esi
55dcf1:	33 cd                	xor    %ebp,%ecx
55dcf3:	5b                   	pop    %ebx
55dcf4:	e8 e1 37 08 00       	call   0x5e14da
55dcf9:	8b e5                	mov    %ebp,%esp
55dcfb:	5d                   	pop    %ebp
55dcfc:	c3                   	ret
55dcfd:	cc                   	int3
55dcfe:	cc                   	int3
55dcff:	cc                   	int3
55dd00:	55                   	push   %ebp
55dd01:	8b ec                	mov    %esp,%ebp
55dd03:	53                   	push   %ebx
55dd04:	8b 5d 0c             	mov    0xc(%ebp),%ebx
55dd07:	57                   	push   %edi
55dd08:	33 ff                	xor    %edi,%edi
55dd0a:	8b 43 40             	mov    0x40(%ebx),%eax
55dd0d:	89 7b 40             	mov    %edi,0x40(%ebx)
55dd10:	85 c0                	test   %eax,%eax
55dd12:	74 2f                	je     0x55dd43
55dd14:	56                   	push   %esi
55dd15:	8b 30                	mov    (%eax),%esi
55dd17:	8b 50 18             	mov    0x18(%eax),%edx
55dd1a:	3b 75 08             	cmp    0x8(%ebp),%esi
55dd1d:	75 0e                	jne    0x55dd2d
55dd1f:	89 43 40             	mov    %eax,0x40(%ebx)
55dd22:	8b f8                	mov    %eax,%edi
55dd24:	c7 40 18 00 00 00 00 	movl   $0x0,0x18(%eax)
55dd2b:	eb 0f                	jmp    0x55dd3c
55dd2d:	8b 8e 80 01 00 00    	mov    0x180(%esi),%ecx
55dd33:	89 48 18             	mov    %ecx,0x18(%eax)