616ef6:	8b 75 0c             	mov    0xc(%ebp),%esi
616ef9:	0f 57 c0             	xorps  %xmm0,%xmm0
616efc:	57                   	push   %edi
616efd:	ff 75 14             	push   0x14(%ebp)
616f00:	8b f9                	mov    %ecx,%edi
616f02:	66 0f 13 45 f8       	movlpd %xmm0,-0x8(%ebp)
616f07:	ff 75 10             	push   0x10(%ebp)
616f0a:	8d 4d f8             	lea    -0x8(%ebp),%ecx
616f0d:	ff 76 04             	push   0x4(%esi)
616f10:	8b 07                	mov    (%edi),%eax
616f12:	ff 36                	push   (%esi)
616f14:	51                   	push   %ecx
616f15:	ff 75 08             	push   0x8(%ebp)
616f18:	8b cf                	mov    %edi,%ecx
616f1a:	ff 90 80 00 00 00    	call   *0x80(%eax)
616f20:	8b 4d f8             	mov    -0x8(%ebp),%ecx
616f23:	01 4f 1c             	add    %ecx,0x1c(%edi)
616f26:	89 0e                	mov    %ecx,(%esi)
616f28:	8b 4d fc             	mov    -0x4(%ebp),%ecx
616f2b:	5f                   	pop    %edi
616f2c:	89 4e 04             	mov    %ecx,0x4(%esi)
616f2f:	5e                   	pop    %esi
616f30:	8b e5                	mov    %ebp,%esp
616f32:	5d                   	pop    %ebp
616f33:	c2 10 00             	ret    $0x10
616f36:	55                   	push   %ebp
616f37:	8b ec                	mov    %esp,%ebp
616f39:	51                   	push   %ecx
616f3a:	51                   	push   %ecx
616f3b:	53                   	push   %ebx
616f3c:	56                   	push   %esi
616f3d:	57                   	push   %edi
616f3e:	6a 14                	push   $0x14
616f40:	8b f1                	mov    %ecx,%esi
616f42:	e8 fb a0 fc ff       	call   0x5e1042
616f47:	8a 5d 10             	mov    0x10(%ebp),%bl
616f4a:	8b f8                	mov    %eax,%edi
616f4c:	89 7d f8             	mov    %edi,-0x8(%ebp)
616f4f:	59                   	pop    %ecx
616f50:	85 ff                	test   %edi,%edi
616f52:	74 21                	je     0x616f75
616f54:	8b 45 0c             	mov    0xc(%ebp),%eax
616f57:	8b 4d 08             	mov    0x8(%ebp),%ecx
616f5a:	89 4f 04             	mov    %ecx,0x4(%edi)
616f5d:	88 5f 08             	mov    %bl,0x8(%edi)
616f60:	c6 47 09 00          	movb   $0x0,0x9(%edi)
616f64:	83 67 0c 00          	andl   $0x0,0xc(%edi)
616f68:	c7 07 98 bc 6d 00    	movl   $0x6dbc98,(%edi)
616f6e:	8a 00                	mov    (%eax),%al
616f70:	88 47 10             	mov    %al,0x10(%edi)
616f73:	eb 02                	jmp    0x616f77
616f75:	33 ff                	xor    %edi,%edi
616f77:	8b 46 04             	mov    0x4(%esi),%eax
616f7a:	8d 4f 0c             	lea    0xc(%edi),%ecx
616f7d:	83 66 04 00          	andl   $0x0,0x4(%esi)
616f81:	50                   	push   %eax
616f82:	e8 cc e6 ff ff       	call   0x615653
616f87:	83 65 10 00          	andl   $0x0,0x10(%ebp)
616f8b:	8d 4e 04             	lea    0x4(%esi),%ecx
616f8e:	57                   	push   %edi
616f8f:	e8 bf e6 ff ff       	call   0x615653
616f94:	8d 4d 10             	lea    0x10(%ebp),%ecx
616f97:	88 5e 08             	mov    %bl,0x8(%esi)
616f9a:	e8 f1 05 e7 ff       	call   0x487590
616f9f:	5f                   	pop    %edi
616fa0:	8b c6                	mov    %esi,%eax
616fa2:	5e                   	pop    %esi
616fa3:	5b                   	pop    %ebx
616fa4:	8b e5                	mov    %ebp,%esp
616fa6:	5d                   	pop    %ebp
616fa7:	c2 0c 00             	ret    $0xc
616faa:	6a 48                	push   $0x48
616fac:	b8 c8 22 66 00       	mov    $0x6622c8,%eax
616fb1:	e8 39 b0 fc ff       	call   0x5e1fef
616fb6:	8b 45 08             	mov    0x8(%ebp),%eax
616fb9:	8b 55 0c             	mov    0xc(%ebp),%edx
616fbc:	8b 08                	mov    (%eax),%ecx
616fbe:	8b 02                	mov    (%edx),%eax
616fc0:	48                   	dec    %eax
616fc1:	03 c1                	add    %ecx,%eax
616fc3:	3b c1                	cmp    %ecx,%eax
616fc5:	73 34                	jae    0x616ffb
616fc7:	68 ec c5 6d 00       	push   $0x6dc5ec
616fcc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
616fcf:	e8 3c 17 e2 ff       	call   0x438710
616fd4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
616fd8:	8d 45 d8             	lea    -0x28(%ebp),%eax
616fdb:	50                   	push   %eax
616fdc:	6a 01                	push   $0x1
616fde:	8d 4d b0             	lea    -0x50(%ebp),%ecx
616fe1:	e8 62 c8 ff ff       	call   0x613848
616fe6:	68 6c 27 70 00       	push   $0x70276c
616feb:	8d 45 b0             	lea    -0x50(%ebp),%eax
616fee:	c7 45 b0 38 37 69 00 	movl   $0x693738,-0x50(%ebp)
616ff5:	50                   	push   %eax
616ff6:	e8 37 ba fc ff       	call   0x5e2a32
616ffb:	89 45 ac             	mov    %eax,-0x54(%ebp)
616ffe:	8d 45 ac             	lea    -0x54(%ebp),%eax
617001:	52                   	push   %edx
617002:	50                   	push   %eax
617003:	e8 d7 f5 ff ff       	call   0x6165df
617008:	59                   	pop    %ecx
617009:	59                   	pop    %ecx
61700a:	e8 9b af fc ff       	call   0x5e1faa
61700f:	c3                   	ret
617010:	55                   	push   %ebp
617011:	8b ec                	mov    %esp,%ebp
617013:	8b 45 08             	mov    0x8(%ebp),%eax
617016:	0f b7 08             	movzwl (%eax),%ecx
617019:	8b 45 0c             	mov    0xc(%ebp),%eax
61701c:	3b 08                	cmp    (%eax),%ecx
61701e:	76 04                	jbe    0x617024
617020:	2b 08                	sub    (%eax),%ecx
617022:	eb 02                	jmp    0x617026
617024:	33 c9                	xor    %ecx,%ecx
617026:	66 8b c1             	mov    %cx,%ax
617029:	5d                   	pop    %ebp
61702a:	c3                   	ret
61702b:	55                   	push   %ebp
61702c:	8b ec                	mov    %esp,%ebp
61702e:	53                   	push   %ebx
61702f:	8b 5d 14             	mov    0x14(%ebp),%ebx
617032:	39 5d 10             	cmp    %ebx,0x10(%ebp)
617035:	75 05                	jne    0x61703c
617037:	8b 45 0c             	mov    0xc(%ebp),%eax
61703a:	eb 68                	jmp    0x6170a4
61703c:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
617040:	57                   	push   %edi
617041:	74 41                	je     0x617084
617043:	8b 4d 08             	mov    0x8(%ebp),%ecx
617046:	56                   	push   %esi
617047:	6a 00                	push   $0x0
617049:	53                   	push   %ebx
61704a:	e8 eb 2a 00 00       	call   0x619b3a
61704f:	8b 4d 10             	mov    0x10(%ebp),%ecx
617052:	8d 14 1b             	lea    (%ebx,%ebx,1),%edx
617055:	3b d9                	cmp    %ecx,%ebx
617057:	8b f0                	mov    %eax,%esi
617059:	0f 42 cb             	cmovb  %ebx,%ecx
61705c:	03 c9                	add    %ecx,%ecx
61705e:	51                   	push   %ecx
61705f:	ff 75 0c             	push   0xc(%ebp)
617062:	52                   	push   %edx
617063:	56                   	push   %esi
617064:	e8 2e e6 ff ff       	call   0x615697
617069:	8b 7d 0c             	mov    0xc(%ebp),%edi
61706c:	33 c0                	xor    %eax,%eax
61706e:	8b 4d 10             	mov    0x10(%ebp),%ecx
617071:	ff 75 0c             	push   0xc(%ebp)
617074:	66 f3 ab             	rep stos %ax,%es:(%edi)
617077:	e8 54 94 ed ff       	call   0x4f04d0
61707c:	83 c4 14             	add    $0x14,%esp
61707f:	8b c6                	mov    %esi,%eax
617081:	5e                   	pop    %esi
617082:	eb 1f                	jmp    0x6170a3
617084:	8b 7d 0c             	mov    0xc(%ebp),%edi
617087:	33 c0                	xor    %eax,%eax
617089:	8b 4d 10             	mov    0x10(%ebp),%ecx
61708c:	ff 75 0c             	push   0xc(%ebp)
61708f:	66 f3 ab             	rep stos %ax,%es:(%edi)
617092:	e8 39 94 ed ff       	call   0x4f04d0
617097:	59                   	pop    %ecx
617098:	8b 4d 08             	mov    0x8(%ebp),%ecx
61709b:	6a 00                	push   $0x0
61709d:	53                   	push   %ebx
61709e:	e8 97 2a 00 00       	call   0x619b3a
6170a3:	5f                   	pop    %edi
6170a4:	5b                   	pop    %ebx
6170a5:	5d                   	pop    %ebp
6170a6:	c3                   	ret
6170a7:	55                   	push   %ebp
6170a8:	8b ec                	mov    %esp,%ebp
6170aa:	53                   	push   %ebx
6170ab:	8b 5d 14             	mov    0x14(%ebp),%ebx
6170ae:	57                   	push   %edi
6170af:	8b 7d 10             	mov    0x10(%ebp),%edi
6170b2:	3b fb                	cmp    %ebx,%edi
6170b4:	75 05                	jne    0x6170bb
6170b6:	8b 45 0c             	mov    0xc(%ebp),%eax
6170b9:	eb 66                	jmp    0x617121
6170bb:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
6170bf:	74 42                	je     0x617103
6170c1:	8b 4d 08             	mov    0x8(%ebp),%ecx
6170c4:	56                   	push   %esi
6170c5:	6a 00                	push   $0x0
6170c7:	53                   	push   %ebx
6170c8:	e8 b9 2a 00 00       	call   0x619b86
6170cd:	3b df                	cmp    %edi,%ebx
6170cf:	8b cf                	mov    %edi,%ecx
6170d1:	8b f0                	mov    %eax,%esi
6170d3:	0f 42 cb             	cmovb  %ebx,%ecx
6170d6:	c1 e1 03             	shl    $0x3,%ecx
6170d9:	51                   	push   %ecx
6170da:	ff 75 0c             	push   0xc(%ebp)
6170dd:	8b cb                	mov    %ebx,%ecx
6170df:	c1 e1 03             	shl    $0x3,%ecx
6170e2:	51                   	push   %ecx
6170e3:	56                   	push   %esi
6170e4:	e8 ae e5 ff ff       	call   0x615697
6170e9:	ff 75 0c             	push   0xc(%ebp)
6170ec:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
6170ef:	33 c0                	xor    %eax,%eax
6170f1:	8b 7d 0c             	mov    0xc(%ebp),%edi
6170f4:	f3 ab                	rep stos %eax,%es:(%edi)
6170f6:	e8 d5 93 ed ff       	call   0x4f04d0
6170fb:	83 c4 14             	add    $0x14,%esp
6170fe:	8b c6                	mov    %esi,%eax
617100:	5e                   	pop    %esi
617101:	eb 1e                	jmp    0x617121
617103:	ff 75 0c             	push   0xc(%ebp)
617106:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
617109:	33 c0                	xor    %eax,%eax
61710b:	8b 7d 0c             	mov    0xc(%ebp),%edi
61710e:	f3 ab                	rep stos %eax,%es:(%edi)
617110:	e8 bb 93 ed ff       	call   0x4f04d0
617115:	59                   	pop    %ecx
617116:	8b 4d 08             	mov    0x8(%ebp),%ecx
617119:	6a 00                	push   $0x0
61711b:	53                   	push   %ebx
61711c:	e8 65 2a 00 00       	call   0x619b86
617121:	5f                   	pop    %edi
617122:	5b                   	pop    %ebx
617123:	5d                   	pop    %ebp
617124:	c3                   	ret
617125:	55                   	push   %ebp
617126:	8b ec                	mov    %esp,%ebp
617128:	53                   	push   %ebx
617129:	8b 5d 14             	mov    0x14(%ebp),%ebx
61712c:	39 5d 10             	cmp    %ebx,0x10(%ebp)
61712f:	75 05                	jne    0x617136
617131:	8b 45 0c             	mov    0xc(%ebp),%eax
617134:	eb 69                	jmp    0x61719f
617136:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
61713a:	57                   	push   %edi
61713b:	74 43                	je     0x617180
61713d:	8b 4d 08             	mov    0x8(%ebp),%ecx
617140:	56                   	push   %esi
617141:	6a 00                	push   $0x0
617143:	53                   	push   %ebx
617144:	e8 16 2a 00 00       	call   0x619b5f
617149:	8b 4d 10             	mov    0x10(%ebp),%ecx
61714c:	8b d3                	mov    %ebx,%edx
61714e:	3b d9                	cmp    %ecx,%ebx
617150:	8b f0                	mov    %eax,%esi
617152:	0f 42 cb             	cmovb  %ebx,%ecx
617155:	c1 e2 02             	shl    $0x2,%edx
617158:	c1 e1 02             	shl    $0x2,%ecx
61715b:	51                   	push   %ecx
61715c:	ff 75 0c             	push   0xc(%ebp)
61715f:	52                   	push   %edx
617160:	56                   	push   %esi
617161:	e8 31 e5 ff ff       	call   0x615697
617166:	8b 7d 0c             	mov    0xc(%ebp),%edi
617169:	33 c0                	xor    %eax,%eax
61716b:	8b 4d 10             	mov    0x10(%ebp),%ecx
61716e:	ff 75 0c             	push   0xc(%ebp)
617171:	f3 ab                	rep stos %eax,%es:(%edi)
617173:	e8 58 93 ed ff       	call   0x4f04d0
617178:	83 c4 14             	add    $0x14,%esp
61717b:	8b c6                	mov    %esi,%eax
61717d:	5e                   	pop    %esi
61717e:	eb 1e                	jmp    0x61719e
617180:	8b 7d 0c             	mov    0xc(%ebp),%edi
617183:	33 c0                	xor    %eax,%eax
617185:	8b 4d 10             	mov    0x10(%ebp),%ecx
617188:	ff 75 0c             	push   0xc(%ebp)
61718b:	f3 ab                	rep stos %eax,%es:(%edi)
61718d:	e8 3e 93 ed ff       	call   0x4f04d0
617192:	59                   	pop    %ecx
617193:	8b 4d 08             	mov    0x8(%ebp),%ecx
617196:	6a 00                	push   $0x0
617198:	53                   	push   %ebx
617199:	e8 c1 29 00 00       	call   0x619b5f
61719e:	5f                   	pop    %edi
61719f:	5b                   	pop    %ebx
6171a0:	5d                   	pop    %ebp
6171a1:	c3                   	ret
6171a2:	55                   	push   %ebp
6171a3:	8b ec                	mov    %esp,%ebp
6171a5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
6171a8:	2b 4d 08             	sub    0x8(%ebp),%ecx
6171ab:	8b 45 10             	mov    0x10(%ebp),%eax
6171ae:	51                   	push   %ecx
6171af:	ff 75 08             	push   0x8(%ebp)
6171b2:	2b c1                	sub    %ecx,%eax
6171b4:	50                   	push   %eax
6171b5:	e8 c6 c2 fc ff       	call   0x5e3480
6171ba:	83 c4 0c             	add    $0xc,%esp
6171bd:	5d                   	pop    %ebp
6171be:	c3                   	ret
6171bf:	55                   	push   %ebp
6171c0:	8b ec                	mov    %esp,%ebp
6171c2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
6171c5:	33 c0                	xor    %eax,%eax
6171c7:	8b 55 08             	mov    0x8(%ebp),%edx
6171ca:	2b ca                	sub    %edx,%ecx
6171cc:	56                   	push   %esi
6171cd:	33 f6                	xor    %esi,%esi
6171cf:	41                   	inc    %ecx
6171d0:	d1 e9                	shr    $1,%ecx
6171d2:	3b 55 0c             	cmp    0xc(%ebp),%edx
6171d5:	0f 47 c8             	cmova  %eax,%ecx
6171d8:	85 c9                	test   %ecx,%ecx
6171da:	74 13                	je     0x6171ef
6171dc:	57                   	push   %edi
6171dd:	8b 7d 10             	mov    0x10(%ebp),%edi
6171e0:	66 8b 07             	mov    (%edi),%ax
6171e3:	46                   	inc    %esi
6171e4:	66 89 02             	mov    %ax,(%edx)
6171e7:	8d 52 02             	lea    0x2(%edx),%edx
6171ea:	3b f1                	cmp    %ecx,%esi
6171ec:	75 f2                	jne    0x6171e0
6171ee:	5f                   	pop    %edi
6171ef:	5e                   	pop    %esi
6171f0:	5d                   	pop    %ebp
6171f1:	c3                   	ret
6171f2:	55                   	push   %ebp
6171f3:	8b ec                	mov    %esp,%ebp
6171f5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
6171f8:	33 c0                	xor    %eax,%eax
6171fa:	8b 55 08             	mov    0x8(%ebp),%edx
6171fd:	2b ca                	sub    %edx,%ecx
6171ff:	83 c1 03             	add    $0x3,%ecx
617202:	c1 e9 02             	shr    $0x2,%ecx
617205:	56                   	push   %esi
617206:	33 f6                	xor    %esi,%esi
617208:	3b 55 0c             	cmp    0xc(%ebp),%edx
61720b:	0f 47 c8             	cmova  %eax,%ecx
61720e:	85 c9                	test   %ecx,%ecx
617210:	74 11                	je     0x617223
617212:	57                   	push   %edi
617213:	8b 7d 10             	mov    0x10(%ebp),%edi
617216:	8b 07                	mov    (%edi),%eax
617218:	46                   	inc    %esi
617219:	89 02                	mov    %eax,(%edx)
61721b:	8d 52 04             	lea    0x4(%edx),%edx
61721e:	3b f1                	cmp    %ecx,%esi
617220:	75 f4                	jne    0x617216
617222:	5f                   	pop    %edi
617223:	5e                   	pop    %esi
617224:	5d                   	pop    %ebp
617225:	c3                   	ret
617226:	55                   	push   %ebp
617227:	8b ec                	mov    %esp,%ebp
617229:	8b 45 0c             	mov    0xc(%ebp),%eax
61722c:	3b 45 10             	cmp    0x10(%ebp),%eax
61722f:	74 16                	je     0x617247
617231:	8b 4d 14             	mov    0x14(%ebp),%ecx
617234:	8b 51 04             	mov    0x4(%ecx),%edx
617237:	39 50 fc             	cmp    %edx,-0x4(%eax)