55dfb4:	8b 41 34             	mov    0x34(%ecx),%eax
55dfb7:	03 41 14             	add    0x14(%ecx),%eax
55dfba:	89 44 24 60          	mov    %eax,0x60(%esp)
55dfbe:	8b 42 34             	mov    0x34(%edx),%eax
55dfc1:	03 42 14             	add    0x14(%edx),%eax
55dfc4:	89 84 24 80 00 00 00 	mov    %eax,0x80(%esp)
55dfcb:	8b 41 38             	mov    0x38(%ecx),%eax
55dfce:	03 41 18             	add    0x18(%ecx),%eax
55dfd1:	89 44 24 64          	mov    %eax,0x64(%esp)
55dfd5:	8b 42 38             	mov    0x38(%edx),%eax
55dfd8:	03 42 18             	add    0x18(%edx),%eax
55dfdb:	89 84 24 84 00 00 00 	mov    %eax,0x84(%esp)
55dfe2:	8b 41 3c             	mov    0x3c(%ecx),%eax
55dfe5:	03 41 1c             	add    0x1c(%ecx),%eax
55dfe8:	89 44 24 68          	mov    %eax,0x68(%esp)
55dfec:	8b 42 3c             	mov    0x3c(%edx),%eax
55dfef:	03 42 1c             	add    0x1c(%edx),%eax
55dff2:	8b b4 24 94 00 00 00 	mov    0x94(%esp),%esi
55dff9:	8b ee                	mov    %esi,%ebp
55dffb:	2b ce                	sub    %esi,%ecx
55dffd:	66 0f 13 44 24 3c    	movlpd %xmm0,0x3c(%esp)
55e003:	89 84 24 88 00 00 00 	mov    %eax,0x88(%esp)
55e00a:	b8 01 00 00 00       	mov    $0x1,%eax
55e00f:	8b 7c 24 24          	mov    0x24(%esp),%edi
55e013:	89 74 24 48          	mov    %esi,0x48(%esp)
55e017:	8b 74 24 3c          	mov    0x3c(%esp),%esi
55e01b:	89 5c 24 34          	mov    %ebx,0x34(%esp)
55e01f:	8b 5c 24 20          	mov    0x20(%esp),%ebx
55e023:	89 4c 24 44          	mov    %ecx,0x44(%esp)
55e027:	8b 4c 24 40          	mov    0x40(%esp),%ecx
55e02b:	89 44 24 28          	mov    %eax,0x28(%esp)
55e02f:	89 6c 24 2c          	mov    %ebp,0x2c(%esp)
55e033:	89 44 24 3c          	mov    %eax,0x3c(%esp)
55e037:	0f 57 c0             	xorps  %xmm0,%xmm0
55e03a:	66 0f 13 44 24 20    	movlpd %xmm0,0x20(%esp)
55e040:	85 c0                	test   %eax,%eax
55e042:	0f 8e 9d 00 00 00    	jle    0x55e0e5
55e048:	8b 44 24 2c          	mov    0x2c(%esp),%eax
55e04c:	8b ea                	mov    %edx,%ebp
55e04e:	03 44 24 44          	add    0x44(%esp),%eax
55e052:	8d 54 24 4c          	lea    0x4c(%esp),%edx
55e056:	2b 94 24 98 00 00 00 	sub    0x98(%esp),%edx
55e05d:	89 54 24 30          	mov    %edx,0x30(%esp)
55e061:	8d 54 24 6c          	lea    0x6c(%esp),%edx
55e065:	2b 94 24 9c 00 00 00 	sub    0x9c(%esp),%edx
55e06c:	89 54 24 38          	mov    %edx,0x38(%esp)
55e070:	8b 54 24 28          	mov    0x28(%esp),%edx
55e074:	89 54 24 1c          	mov    %edx,0x1c(%esp)
55e078:	8b 54 24 24          	mov    0x24(%esp),%edx
55e07c:	89 54 24 14          	mov    %edx,0x14(%esp)
55e080:	8b 54 24 20          	mov    0x20(%esp),%edx
55e084:	89 44 24 10          	mov    %eax,0x10(%esp)
55e088:	89 54 24 18          	mov    %edx,0x18(%esp)
55e08c:	0f 1f 40 00          	nopl   0x0(%eax)
55e090:	8b 00                	mov    (%eax),%eax
55e092:	8d 6d 04             	lea    0x4(%ebp),%ebp
55e095:	f7 65 fc             	mull   -0x4(%ebp)
55e098:	01 44 24 18          	add    %eax,0x18(%esp)
55e09c:	8b 44 24 10          	mov    0x10(%esp),%eax
55e0a0:	11 54 24 14          	adc    %edx,0x14(%esp)
55e0a4:	8b 54 24 30          	mov    0x30(%esp),%edx
55e0a8:	8b 04 02             	mov    (%edx,%eax,1),%eax
55e0ab:	8b 54 24 38          	mov    0x38(%esp),%edx
55e0af:	f7 64 2a fc          	mull   -0x4(%edx,%ebp,1)
55e0b3:	03 f0                	add    %eax,%esi
55e0b5:	8b 44 24 10          	mov    0x10(%esp),%eax
55e0b9:	13 ca                	adc    %edx,%ecx
55e0bb:	8b 40 20             	mov    0x20(%eax),%eax
55e0be:	f7 65 1c             	mull   0x1c(%ebp)
55e0c1:	03 d8                	add    %eax,%ebx
55e0c3:	8b 44 24 10          	mov    0x10(%esp),%eax
55e0c7:	13 fa                	adc    %edx,%edi
55e0c9:	83 e8 04             	sub    $0x4,%eax
55e0cc:	83 6c 24 1c 01       	subl   $0x1,0x1c(%esp)
55e0d1:	89 44 24 10          	mov    %eax,0x10(%esp)
55e0d5:	75 b9                	jne    0x55e090
55e0d7:	8b 54 24 14          	mov    0x14(%esp),%edx
55e0db:	8b 44 24 18          	mov    0x18(%esp),%eax
55e0df:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
55e0e3:	eb 08                	jmp    0x55e0ed
55e0e5:	8b 54 24 24          	mov    0x24(%esp),%edx
55e0e9:	8b 44 24 20          	mov    0x20(%esp),%eax
55e0ed:	2b f0                	sub    %eax,%esi
55e0ef:	0f 57 c0             	xorps  %xmm0,%xmm0
55e0f2:	66 0f 13 44 24 20    	movlpd %xmm0,0x20(%esp)
55e0f8:	1b ca                	sbb    %edx,%ecx
55e0fa:	03 d8                	add    %eax,%ebx
55e0fc:	13 fa                	adc    %edx,%edi
55e0fe:	83 7c 24 28 08       	cmpl   $0x8,0x28(%esp)
55e103:	0f 8d 9c 00 00 00    	jge    0x55e1a5
55e109:	8b 6c 24 34          	mov    0x34(%esp),%ebp
55e10d:	8d 44 24 68          	lea    0x68(%esp),%eax
55e111:	8d 54 24 6c          	lea    0x6c(%esp),%edx
55e115:	89 44 24 18          	mov    %eax,0x18(%esp)
55e119:	2b 94 24 9c 00 00 00 	sub    0x9c(%esp),%edx
55e120:	8b 84 24 98 00 00 00 	mov    0x98(%esp),%eax
55e127:	89 54 24 38          	mov    %edx,0x38(%esp)
55e12b:	83 c0 3c             	add    $0x3c,%eax
55e12e:	ba 08 00 00 00       	mov    $0x8,%edx
55e133:	89 44 24 14          	mov    %eax,0x14(%esp)
55e137:	2b 54 24 28          	sub    0x28(%esp),%edx
55e13b:	89 54 24 30          	mov    %edx,0x30(%esp)
55e13f:	8b 54 24 24          	mov    0x24(%esp),%edx
55e143:	89 54 24 10          	mov    %edx,0x10(%esp)
55e147:	8b 54 24 20          	mov    0x20(%esp),%edx
55e14b:	89 54 24 1c          	mov    %edx,0x1c(%esp)
55e14f:	90                   	nop
55e150:	8b 40 e0             	mov    -0x20(%eax),%eax
55e153:	8d 6d 04             	lea    0x4(%ebp),%ebp
55e156:	f7 65 fc             	mull   -0x4(%ebp)
55e159:	2b d8                	sub    %eax,%ebx
55e15b:	8b 44 24 18          	mov    0x18(%esp),%eax
55e15f:	1b fa                	sbb    %edx,%edi
55e161:	8b 54 24 38          	mov    0x38(%esp),%edx
55e165:	8b 00                	mov    (%eax),%eax
55e167:	f7 64 2a fc          	mull   -0x4(%edx,%ebp,1)
55e16b:	01 44 24 1c          	add    %eax,0x1c(%esp)
55e16f:	8b 44 24 14          	mov    0x14(%esp),%eax
55e173:	11 54 24 10          	adc    %edx,0x10(%esp)
55e177:	8b 00                	mov    (%eax),%eax
55e179:	f7 65 1c             	mull   0x1c(%ebp)
55e17c:	03 f0                	add    %eax,%esi
55e17e:	8b 44 24 14          	mov    0x14(%esp),%eax
55e182:	13 ca                	adc    %edx,%ecx
55e184:	83 6c 24 18 04       	subl   $0x4,0x18(%esp)
55e189:	83 e8 04             	sub    $0x4,%eax
55e18c:	83 6c 24 30 01       	subl   $0x1,0x30(%esp)
55e191:	89 44 24 14          	mov    %eax,0x14(%esp)
55e195:	75 b9                	jne    0x55e150
55e197:	8b 54 24 10          	mov    0x10(%esp),%edx
55e19b:	8b 44 24 1c          	mov    0x1c(%esp),%eax
55e19f:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
55e1a3:	eb 08                	jmp    0x55e1ad
55e1a5:	8b 54 24 24          	mov    0x24(%esp),%edx
55e1a9:	8b 44 24 20          	mov    0x20(%esp),%eax
55e1ad:	03 f0                	add    %eax,%esi
55e1af:	13 ca                	adc    %edx,%ecx
55e1b1:	03 d8                	add    %eax,%ebx
55e1b3:	8b c3                	mov    %ebx,%eax
55e1b5:	13 fa                	adc    %edx,%edi
55e1b7:	83 44 24 34 04       	addl   $0x4,0x34(%esp)
55e1bc:	8b 94 24 9c 00 00 00 	mov    0x9c(%esp),%edx
55e1c3:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e1c8:	89 45 00             	mov    %eax,0x0(%ebp)
55e1cb:	8b c6                	mov    %esi,%eax
55e1cd:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e1d2:	89 45 20             	mov    %eax,0x20(%ebp)
55e1d5:	83 c5 04             	add    $0x4,%ebp
55e1d8:	8b 44 24 28          	mov    0x28(%esp),%eax
55e1dc:	0f ac fb 1c          	shrd   $0x1c,%edi,%ebx
55e1e0:	0f ac ce 1c          	shrd   $0x1c,%ecx,%esi
55e1e4:	40                   	inc    %eax
55e1e5:	c1 ef 1c             	shr    $0x1c,%edi
55e1e8:	c1 e9 1c             	shr    $0x1c,%ecx
55e1eb:	83 7c 24 3c 08       	cmpl   $0x8,0x3c(%esp)
55e1f0:	89 44 24 28          	mov    %eax,0x28(%esp)
55e1f4:	89 6c 24 2c          	mov    %ebp,0x2c(%esp)
55e1f8:	0f 8c 35 fe ff ff    	jl     0x55e033
55e1fe:	8b 6c 24 48          	mov    0x48(%esp),%ebp
55e202:	33 d2                	xor    %edx,%edx
55e204:	8b 45 20             	mov    0x20(%ebp),%eax
55e207:	03 c6                	add    %esi,%eax
55e209:	13 d1                	adc    %ecx,%edx
55e20b:	03 d8                	add    %eax,%ebx
55e20d:	8b c3                	mov    %ebx,%eax
55e20f:	13 fa                	adc    %edx,%edi
55e211:	03 75 00             	add    0x0(%ebp),%esi
55e214:	83 d1 00             	adc    $0x0,%ecx
55e217:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e21c:	89 45 20             	mov    %eax,0x20(%ebp)
55e21f:	8b c6                	mov    %esi,%eax
55e221:	0f ac ce 1c          	shrd   $0x1c,%ecx,%esi
55e225:	8b 8c 24 8c 00 00 00 	mov    0x8c(%esp),%ecx
55e22c:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e231:	01 75 04             	add    %esi,0x4(%ebp)
55e234:	0f ac fb 1c          	shrd   $0x1c,%edi,%ebx
55e238:	5f                   	pop    %edi
55e239:	01 5d 24             	add    %ebx,0x24(%ebp)
55e23c:	5e                   	pop    %esi
55e23d:	89 45 00             	mov    %eax,0x0(%ebp)
55e240:	5d                   	pop    %ebp
55e241:	5b                   	pop    %ebx
55e242:	33 cc                	xor    %esp,%ecx
55e244:	e8 dd 37 07 00       	call   0x5d1a26
55e249:	81 c4 80 00 00 00    	add    $0x80,%esp
55e24f:	c3                   	ret
55e250:	b8 1c 00 00 00       	mov    $0x1c,%eax
55e255:	e8 56 35 07 00       	call   0x5d17b0
55e25a:	8b 44 24 28          	mov    0x28(%esp),%eax
55e25e:	53                   	push   %ebx
55e25f:	55                   	push   %ebp
55e260:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
55e264:	56                   	push   %esi
55e265:	57                   	push   %edi
55e266:	f7 65 00             	mull   0x0(%ebp)
55e269:	8b c8                	mov    %eax,%ecx
55e26b:	8b f2                	mov    %edx,%esi
55e26d:	8b 44 24 38          	mov    0x38(%esp),%eax
55e271:	f7 65 20             	mull   0x20(%ebp)
55e274:	8b f8                	mov    %eax,%edi
55e276:	8b da                	mov    %edx,%ebx
55e278:	8b 54 24 30          	mov    0x30(%esp),%edx
55e27c:	8b c1                	mov    %ecx,%eax
55e27e:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e283:	89 44 24 24          	mov    %eax,0x24(%esp)
55e287:	0f ac f1 1c          	shrd   $0x1c,%esi,%ecx
55e28b:	89 02                	mov    %eax,(%edx)
55e28d:	8b c7                	mov    %edi,%eax
55e28f:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e294:	c1 ee 1c             	shr    $0x1c,%esi
55e297:	89 42 20             	mov    %eax,0x20(%edx)
55e29a:	89 44 24 1c          	mov    %eax,0x1c(%esp)
55e29e:	8b 44 24 38          	mov    0x38(%esp),%eax
55e2a2:	f7 65 04             	mull   0x4(%ebp)
55e2a5:	8b e8                	mov    %eax,%ebp
55e2a7:	8b 44 24 38          	mov    0x38(%esp),%eax
55e2ab:	03 e9                	add    %ecx,%ebp
55e2ad:	8b 4c 24 34          	mov    0x34(%esp),%ecx
55e2b1:	13 d6                	adc    %esi,%edx
55e2b3:	8b 74 24 30          	mov    0x30(%esp),%esi
55e2b7:	89 54 24 10          	mov    %edx,0x10(%esp)
55e2bb:	f7 61 24             	mull   0x24(%ecx)
55e2be:	0f ac df 1c          	shrd   $0x1c,%ebx,%edi
55e2c2:	c1 eb 1c             	shr    $0x1c,%ebx
55e2c5:	03 c7                	add    %edi,%eax
55e2c7:	89 44 24 14          	mov    %eax,0x14(%esp)
55e2cb:	13 d3                	adc    %ebx,%edx
55e2cd:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e2d2:	89 46 24             	mov    %eax,0x24(%esi)
55e2d5:	89 44 24 20          	mov    %eax,0x20(%esp)
55e2d9:	8b 44 24 38          	mov    0x38(%esp),%eax
55e2dd:	89 54 24 18          	mov    %edx,0x18(%esp)
55e2e1:	8b d5                	mov    %ebp,%edx
55e2e3:	81 e2 ff ff ff 0f    	and    $0xfffffff,%edx
55e2e9:	89 56 04             	mov    %edx,0x4(%esi)
55e2ec:	89 54 24 28          	mov    %edx,0x28(%esp)
55e2f0:	f7 61 08             	mull   0x8(%ecx)
55e2f3:	8b c8                	mov    %eax,%ecx
55e2f5:	8b f2                	mov    %edx,%esi
55e2f7:	8b 44 24 10          	mov    0x10(%esp),%eax
55e2fb:	0f ac c5 1c          	shrd   $0x1c,%eax,%ebp
55e2ff:	c1 e8 1c             	shr    $0x1c,%eax
55e302:	03 cd                	add    %ebp,%ecx
55e304:	8b 6c 24 34          	mov    0x34(%esp),%ebp
55e308:	13 f0                	adc    %eax,%esi
55e30a:	8b 44 24 38          	mov    0x38(%esp),%eax
55e30e:	f7 65 28             	mull   0x28(%ebp)
55e311:	8b f8                	mov    %eax,%edi
55e313:	8b da                	mov    %edx,%ebx
55e315:	8b 44 24 14          	mov    0x14(%esp),%eax
55e319:	8b 54 24 18          	mov    0x18(%esp),%edx
55e31d:	0f ac d0 1c          	shrd   $0x1c,%edx,%eax
55e321:	c1 ea 1c             	shr    $0x1c,%edx
55e324:	03 f8                	add    %eax,%edi
55e326:	8b c1                	mov    %ecx,%eax
55e328:	13 da                	adc    %edx,%ebx
55e32a:	8b 54 24 30          	mov    0x30(%esp),%edx
55e32e:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e333:	0f ac f1 1c          	shrd   $0x1c,%esi,%ecx
55e337:	89 42 08             	mov    %eax,0x8(%edx)
55e33a:	8b c7                	mov    %edi,%eax
55e33c:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e341:	89 42 28             	mov    %eax,0x28(%edx)
55e344:	8b 44 24 38          	mov    0x38(%esp),%eax
55e348:	f7 65 0c             	mull   0xc(%ebp)
55e34b:	c1 ee 1c             	shr    $0x1c,%esi
55e34e:	8b e8                	mov    %eax,%ebp
55e350:	8b 44 24 38          	mov    0x38(%esp),%eax
55e354:	03 e9                	add    %ecx,%ebp
55e356:	8b ca                	mov    %edx,%ecx
55e358:	8b 54 24 34          	mov    0x34(%esp),%edx
55e35c:	13 ce                	adc    %esi,%ecx
55e35e:	0f ac df 1c          	shrd   $0x1c,%ebx,%edi
55e362:	f7 62 2c             	mull   0x2c(%edx)
55e365:	c1 eb 1c             	shr    $0x1c,%ebx
55e368:	8b f0                	mov    %eax,%esi
55e36a:	8b c5                	mov    %ebp,%eax
55e36c:	03 f7                	add    %edi,%esi
55e36e:	8b fa                	mov    %edx,%edi
55e370:	8b 54 24 30          	mov    0x30(%esp),%edx
55e374:	13 fb                	adc    %ebx,%edi
55e376:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e37b:	0f ac cd 1c          	shrd   $0x1c,%ecx,%ebp
55e37f:	89 42 0c             	mov    %eax,0xc(%edx)
55e382:	8b c6                	mov    %esi,%eax
55e384:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e389:	c1 e9 1c             	shr    $0x1c,%ecx
55e38c:	89 42 2c             	mov    %eax,0x2c(%edx)
55e38f:	8b 54 24 34          	mov    0x34(%esp),%edx
55e393:	8b 44 24 38          	mov    0x38(%esp),%eax
55e397:	f7 62 10             	mull   0x10(%edx)
55e39a:	8b d8                	mov    %eax,%ebx
55e39c:	8b 44 24 38          	mov    0x38(%esp),%eax
55e3a0:	03 dd                	add    %ebp,%ebx
55e3a2:	8b ea                	mov    %edx,%ebp
55e3a4:	13 e9                	adc    %ecx,%ebp
55e3a6:	8b 4c 24 34          	mov    0x34(%esp),%ecx
55e3aa:	0f ac fe 1c          	shrd   $0x1c,%edi,%esi
55e3ae:	c1 ef 1c             	shr    $0x1c,%edi
55e3b1:	f7 61 30             	mull   0x30(%ecx)
55e3b4:	8b c8                	mov    %eax,%ecx
55e3b6:	8b c3                	mov    %ebx,%eax
55e3b8:	03 ce                	add    %esi,%ecx
55e3ba:	8b f2                	mov    %edx,%esi
55e3bc:	8b 54 24 30          	mov    0x30(%esp),%edx
55e3c0:	13 f7                	adc    %edi,%esi
55e3c2:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e3c7:	0f ac eb 1c          	shrd   $0x1c,%ebp,%ebx
55e3cb:	89 42 10             	mov    %eax,0x10(%edx)
55e3ce:	8b c1                	mov    %ecx,%eax
55e3d0:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e3d5:	c1 ed 1c             	shr    $0x1c,%ebp
55e3d8:	89 42 30             	mov    %eax,0x30(%edx)
55e3db:	8b 54 24 34          	mov    0x34(%esp),%edx
55e3df:	8b 44 24 38          	mov    0x38(%esp),%eax
55e3e3:	f7 62 14             	mull   0x14(%edx)
55e3e6:	8b f8                	mov    %eax,%edi
55e3e8:	8b 44 24 38          	mov    0x38(%esp),%eax
55e3ec:	03 fb                	add    %ebx,%edi
55e3ee:	8b da                	mov    %edx,%ebx
55e3f0:	8b 54 24 34          	mov    0x34(%esp),%edx
55e3f4:	13 dd                	adc    %ebp,%ebx
55e3f6:	0f ac f1 1c          	shrd   $0x1c,%esi,%ecx
55e3fa:	f7 62 34             	mull   0x34(%edx)
55e3fd:	c1 ee 1c             	shr    $0x1c,%esi
55e400:	8b e8                	mov    %eax,%ebp
55e402:	8b c7                	mov    %edi,%eax
55e404:	03 e9                	add    %ecx,%ebp
55e406:	8b ca                	mov    %edx,%ecx
55e408:	8b 54 24 30          	mov    0x30(%esp),%edx
55e40c:	13 ce                	adc    %esi,%ecx
55e40e:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e413:	0f ac df 1c          	shrd   $0x1c,%ebx,%edi
55e417:	89 42 14             	mov    %eax,0x14(%edx)
55e41a:	8b c5                	mov    %ebp,%eax
55e41c:	25 ff ff ff 0f       	and    $0xfffffff,%eax
55e421:	c1 eb 1c             	shr    $0x1c,%ebx
55e424:	89 42 34             	mov    %eax,0x34(%edx)
55e427:	8b 54 24 34          	mov    0x34(%esp),%edx
55e42b:	8b 44 24 38          	mov    0x38(%esp),%eax
55e42f:	f7 62 18             	mull   0x18(%edx)
55e432:	8b f0                	mov    %eax,%esi
55e434:	8b 44 24 38          	mov    0x38(%esp),%eax
55e438:	03 f7                	add    %edi,%esi
55e43a:	8b fa                	mov    %edx,%edi
55e43c:	8b 54 24 34          	mov    0x34(%esp),%edx
55e440:	13 fb                	adc    %ebx,%edi
55e442:	f7 62 38             	mull   0x38(%edx)
55e445:	0f ac cd 1c          	shrd   $0x1c,%ecx,%ebp
55e449:	8b d8                	mov    %eax,%ebx