55d1de:	8b 14 24             	mov    (%esp),%edx
55d1e1:	8b 42 1c             	mov    0x1c(%edx),%eax
55d1e4:	e8 3f 8e 01 00       	call   0x576028
55d1e9:	8b 14 24             	mov    (%esp),%edx
55d1ec:	33 c9                	xor    %ecx,%ecx
55d1ee:	89 4a 1c             	mov    %ecx,0x1c(%edx)
55d1f1:	8b 44 24 44          	mov    0x44(%esp),%eax
55d1f5:	83 c0 48             	add    $0x48,%eax
55d1f8:	89 44 24 5c          	mov    %eax,0x5c(%esp)
55d1fc:	66 c7 44 24 50 00 00 	movw   $0x0,0x50(%esp)
55d203:	e9 4d 01 00 00       	jmp    0x55d355
55d208:	0f b7 44 24 50       	movzwl 0x50(%esp),%eax
55d20d:	8b 54 24 40          	mov    0x40(%esp),%edx
55d211:	8b 4a 2c             	mov    0x2c(%edx),%ecx
55d214:	8b d0                	mov    %eax,%edx
55d216:	c1 e2 07             	shl    $0x7,%edx
55d219:	03 d0                	add    %eax,%edx
55d21b:	c1 e2 02             	shl    $0x2,%edx
55d21e:	03 ca                	add    %edx,%ecx
55d220:	89 4c 24 14          	mov    %ecx,0x14(%esp)
55d224:	8b 4c 24 14          	mov    0x14(%esp),%ecx
55d228:	8b 54 24 5c          	mov    0x5c(%esp),%edx
55d22c:	0f b7 01             	movzwl (%ecx),%eax
55d22f:	33 c9                	xor    %ecx,%ecx
55d231:	8a 4a 01             	mov    0x1(%edx),%cl
55d234:	3b c1                	cmp    %ecx,%eax
55d236:	0f 84 14 01 00 00    	je     0x55d350
55d23c:	b8 52 ff 00 00       	mov    $0xff52,%eax
55d241:	e8 9a 8d 01 00       	call   0x575fe0
55d246:	8b 14 24             	mov    (%esp),%edx
55d249:	85 c0                	test   %eax,%eax
55d24b:	89 42 1c             	mov    %eax,0x1c(%edx)
55d24e:	75 08                	jne    0x55d258
55d250:	83 c8 ff             	or     $0xffffffff,%eax
55d253:	e9 e0 05 00 00       	jmp    0x55d838
55d258:	8b 54 24 40          	mov    0x40(%esp),%edx
55d25c:	8b 4a 2c             	mov    0x2c(%edx),%ecx
55d25f:	89 4c 24 14          	mov    %ecx,0x14(%esp)
55d263:	8b 04 24             	mov    (%esp),%eax
55d266:	8b 40 1c             	mov    0x1c(%eax),%eax
55d269:	83 c0 08             	add    $0x8,%eax
55d26c:	c6 40 08 00          	movb   $0x0,0x8(%eax)
55d270:	8b 54 24 14          	mov    0x14(%esp),%edx
55d274:	8a 0a                	mov    (%edx),%cl
55d276:	80 c1 ff             	add    $0xff,%cl
55d279:	88 48 09             	mov    %cl,0x9(%eax)
55d27c:	8b 54 24 40          	mov    0x40(%esp),%edx
55d280:	8a 4a 15             	mov    0x15(%edx),%cl
55d283:	88 48 01             	mov    %cl,0x1(%eax)
55d286:	8b 54 24 40          	mov    0x40(%esp),%edx
55d28a:	66 8b 4a 16          	mov    0x16(%edx),%cx
55d28e:	66 89 48 02          	mov    %cx,0x2(%eax)
55d292:	8b 54 24 14          	mov    0x14(%esp),%edx
55d296:	8a 8a 24 01 00 00    	mov    0x124(%edx),%cl
55d29c:	80 c1 fe             	add    $0xfe,%cl
55d29f:	88 48 0a             	mov    %cl,0xa(%eax)
55d2a2:	8b 54 24 14          	mov    0x14(%esp),%edx
55d2a6:	8a 8a 28 01 00 00    	mov    0x128(%edx),%cl
55d2ac:	80 c1 fe             	add    $0xfe,%cl
55d2af:	88 48 0b             	mov    %cl,0xb(%eax)
55d2b2:	8b 54 24 14          	mov    0x14(%esp),%edx
55d2b6:	8a 8a 30 01 00 00    	mov    0x130(%edx),%cl
55d2bc:	88 48 0c             	mov    %cl,0xc(%eax)
55d2bf:	8b 54 24 14          	mov    0x14(%esp),%edx
55d2c3:	8a 4a 0c             	mov    0xc(%edx),%cl
55d2c6:	88 48 0d             	mov    %cl,0xd(%eax)
55d2c9:	8b 54 24 40          	mov    0x40(%esp),%edx
55d2cd:	8a 4a 18             	mov    0x18(%edx),%cl
55d2d0:	84 c9                	test   %cl,%cl
55d2d2:	0f 95 c2             	setne  %dl
55d2d5:	83 e2 01             	and    $0x1,%edx
55d2d8:	88 50 04             	mov    %dl,0x4(%eax)
55d2db:	33 db                	xor    %ebx,%ebx
55d2dd:	83 c0 14             	add    $0x14,%eax
55d2e0:	eb 2d                	jmp    0x55d30f
55d2e2:	8b 4c 24 14          	mov    0x14(%esp),%ecx
55d2e6:	8b d3                	mov    %ebx,%edx
55d2e8:	c1 e2 04             	shl    $0x4,%edx
55d2eb:	2b d3                	sub    %ebx,%edx
55d2ed:	8b 49 04             	mov    0x4(%ecx),%ecx
55d2f0:	8a 54 91 10          	mov    0x10(%ecx,%edx,4),%dl
55d2f4:	88 10                	mov    %dl,(%eax)
55d2f6:	8b d3                	mov    %ebx,%edx
55d2f8:	8b 4c 24 14          	mov    0x14(%esp),%ecx
55d2fc:	c1 e2 04             	shl    $0x4,%edx
55d2ff:	2b d3                	sub    %ebx,%edx
55d301:	8b 49 04             	mov    0x4(%ecx),%ecx
55d304:	43                   	inc    %ebx
55d305:	8a 54 91 14          	mov    0x14(%ecx,%edx,4),%dl
55d309:	88 50 01             	mov    %dl,0x1(%eax)
55d30c:	83 c0 02             	add    $0x2,%eax
55d30f:	8b 54 24 14          	mov    0x14(%esp),%edx
55d313:	0f b7 0a             	movzwl (%edx),%ecx
55d316:	3b d9                	cmp    %ecx,%ebx
55d318:	7c c8                	jl     0x55d2e2
55d31a:	8b 04 24             	mov    (%esp),%eax
55d31d:	8b 48 1c             	mov    0x1c(%eax),%ecx
55d320:	8b 04 24             	mov    (%esp),%eax
55d323:	8b 50 10             	mov    0x10(%eax),%edx
55d326:	8b 04 24             	mov    (%esp),%eax
55d329:	8b 40 20             	mov    0x20(%eax),%eax
55d32c:	e8 b7 8b 01 00       	call   0x575ee8
55d331:	85 c0                	test   %eax,%eax
55d333:	74 08                	je     0x55d33d
55d335:	83 c8 ff             	or     $0xffffffff,%eax
55d338:	e9 fb 04 00 00       	jmp    0x55d838
55d33d:	8b 14 24             	mov    (%esp),%edx
55d340:	8b 42 1c             	mov    0x1c(%edx),%eax
55d343:	e8 e0 8c 01 00       	call   0x576028
55d348:	8b 14 24             	mov    (%esp),%edx
55d34b:	33 c9                	xor    %ecx,%ecx
55d34d:	89 4a 1c             	mov    %ecx,0x1c(%edx)
55d350:	66 ff 44 24 50       	incw   0x50(%esp)
55d355:	8b 44 24 44          	mov    0x44(%esp),%eax
55d359:	66 8b 50 30          	mov    0x30(%eax),%dx
55d35d:	66 3b 54 24 50       	cmp    0x50(%esp),%dx
55d362:	0f 87 a0 fe ff ff    	ja     0x55d208
55d368:	66 c7 44 24 50 00 00 	movw   $0x0,0x50(%esp)
55d36f:	8b 4c 24 40          	mov    0x40(%esp),%ecx
55d373:	8b 41 2c             	mov    0x2c(%ecx),%eax
55d376:	89 44 24 14          	mov    %eax,0x14(%esp)
55d37a:	e9 5e 01 00 00       	jmp    0x55d4dd
55d37f:	0f b7 44 24 50       	movzwl 0x50(%esp),%eax
55d384:	8b 54 24 44          	mov    0x44(%esp),%edx
55d388:	8b 4a 34             	mov    0x34(%edx),%ecx
55d38b:	8b d0                	mov    %eax,%edx
55d38d:	c1 e2 03             	shl    $0x3,%edx
55d390:	8d 14 52             	lea    (%edx,%edx,2),%edx
55d393:	8d 14 d2             	lea    (%edx,%edx,8),%edx
55d396:	03 ca                	add    %edx,%ecx
55d398:	89 4c 24 58          	mov    %ecx,0x58(%esp)
55d39c:	8b 4c 24 58          	mov    0x58(%esp),%ecx
55d3a0:	8b 54 24 14          	mov    0x14(%esp),%edx
55d3a4:	66 8b 41 0c          	mov    0xc(%ecx),%ax
55d3a8:	66 3b 82 34 01 00 00 	cmp    0x134(%edx),%ax
55d3af:	75 4d                	jne    0x55d3fe
55d3b1:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%esp)
55d3b8:	00
55d3b9:	33 c9                	xor    %ecx,%ecx
55d3bb:	89 4c 24 60          	mov    %ecx,0x60(%esp)
55d3bf:	8b 44 24 14          	mov    0x14(%esp),%eax
55d3c3:	8b 4c 24 58          	mov    0x58(%esp),%ecx
55d3c7:	8d 90 36 01 00 00    	lea    0x136(%eax),%edx
55d3cd:	8d 41 0e             	lea    0xe(%ecx),%eax
55d3d0:	eb 1a                	jmp    0x55d3ec
55d3d2:	66 8b 08             	mov    (%eax),%cx
55d3d5:	66 3b 0a             	cmp    (%edx),%cx
55d3d8:	74 08                	je     0x55d3e2
55d3da:	33 d2                	xor    %edx,%edx
55d3dc:	89 54 24 54          	mov    %edx,0x54(%esp)
55d3e0:	eb 22                	jmp    0x55d404
55d3e2:	ff 44 24 60          	incl   0x60(%esp)
55d3e6:	83 c2 02             	add    $0x2,%edx
55d3e9:	83 c0 02             	add    $0x2,%eax
55d3ec:	8b 4c 24 58          	mov    0x58(%esp),%ecx
55d3f0:	8b 5c 24 60          	mov    0x60(%esp),%ebx
55d3f4:	0f b7 49 0c          	movzwl 0xc(%ecx),%ecx
55d3f8:	3b cb                	cmp    %ebx,%ecx
55d3fa:	7f d6                	jg     0x55d3d2
55d3fc:	eb 06                	jmp    0x55d404
55d3fe:	33 c0                	xor    %eax,%eax
55d400:	89 44 24 54          	mov    %eax,0x54(%esp)
55d404:	8b 54 24 54          	mov    0x54(%esp),%edx
55d408:	85 d2                	test   %edx,%edx
55d40a:	0f 85 c0 00 00 00    	jne    0x55d4d0
55d410:	b8 5d ff 00 00       	mov    $0xff5d,%eax
55d415:	e8 c6 8b 01 00       	call   0x575fe0
55d41a:	8b 14 24             	mov    (%esp),%edx
55d41d:	85 c0                	test   %eax,%eax
55d41f:	89 42 1c             	mov    %eax,0x1c(%edx)
55d422:	75 08                	jne    0x55d42c
55d424:	83 c8 ff             	or     $0xffffffff,%eax
55d427:	e9 0c 04 00 00       	jmp    0x55d838
55d42c:	8b 14 24             	mov    (%esp),%edx
55d42f:	8b 4a 1c             	mov    0x1c(%edx),%ecx
55d432:	83 c1 08             	add    $0x8,%ecx
55d435:	89 4c 24 28          	mov    %ecx,0x28(%esp)
55d439:	66 8b 54 24 50       	mov    0x50(%esp),%dx
55d43e:	8b 44 24 28          	mov    0x28(%esp),%eax
55d442:	66 89 10             	mov    %dx,(%eax)
55d445:	8b 4c 24 44          	mov    0x44(%esp),%ecx
55d449:	8b 54 24 28          	mov    0x28(%esp),%edx
55d44d:	8a 81 d4 00 00 00    	mov    0xd4(%ecx),%al
55d453:	88 42 10             	mov    %al,0x10(%edx)
55d456:	8b 4c 24 14          	mov    0x14(%esp),%ecx
55d45a:	8b 41 0c             	mov    0xc(%ecx),%eax
55d45d:	85 c0                	test   %eax,%eax
55d45f:	75 04                	jne    0x55d465
55d461:	b2 02                	mov    $0x2,%dl
55d463:	eb 02                	jmp    0x55d467
55d465:	33 d2                	xor    %edx,%edx
55d467:	8b 44 24 28          	mov    0x28(%esp),%eax
55d46b:	88 50 04             	mov    %dl,0x4(%eax)
55d46e:	8b 4c 24 14          	mov    0x14(%esp),%ecx
55d472:	8b 54 24 28          	mov    0x28(%esp),%edx
55d476:	0f b7 81 34 01 00 00 	movzwl 0x134(%ecx),%eax
55d47d:	89 42 08             	mov    %eax,0x8(%edx)
55d480:	8b 44 24 28          	mov    0x28(%esp),%eax
55d484:	8b 4c 24 14          	mov    0x14(%esp),%ecx
55d488:	81 c1 36 01 00 00    	add    $0x136,%ecx
55d48e:	89 48 0c             	mov    %ecx,0xc(%eax)
55d491:	8b 14 24             	mov    (%esp),%edx
55d494:	8b 04 24             	mov    (%esp),%eax
55d497:	8b 4a 1c             	mov    0x1c(%edx),%ecx
55d49a:	8b 50 10             	mov    0x10(%eax),%edx
55d49d:	8b 04 24             	mov    (%esp),%eax
55d4a0:	8b 40 20             	mov    0x20(%eax),%eax
55d4a3:	e8 40 8a 01 00       	call   0x575ee8
55d4a8:	85 c0                	test   %eax,%eax
55d4aa:	74 08                	je     0x55d4b4
55d4ac:	83 c8 ff             	or     $0xffffffff,%eax
55d4af:	e9 84 03 00 00       	jmp    0x55d838
55d4b4:	8b 54 24 28          	mov    0x28(%esp),%edx
55d4b8:	33 c9                	xor    %ecx,%ecx
55d4ba:	89 4a 0c             	mov    %ecx,0xc(%edx)
55d4bd:	8b 04 24             	mov    (%esp),%eax
55d4c0:	8b 40 1c             	mov    0x1c(%eax),%eax
55d4c3:	e8 60 8b 01 00       	call   0x576028
55d4c8:	8b 14 24             	mov    (%esp),%edx
55d4cb:	33 c9                	xor    %ecx,%ecx
55d4cd:	89 4a 1c             	mov    %ecx,0x1c(%edx)
55d4d0:	66 ff 44 24 50       	incw   0x50(%esp)
55d4d5:	81 44 24 14 04 02 00 	addl   $0x204,0x14(%esp)
55d4dc:	00
55d4dd:	8b 44 24 44          	mov    0x44(%esp),%eax
55d4e1:	66 8b 50 30          	mov    0x30(%eax),%dx
55d4e5:	66 3b 54 24 50       	cmp    0x50(%esp),%dx
55d4ea:	0f 87 8f fe ff ff    	ja     0x55d37f
55d4f0:	b8 93 ff 00 00       	mov    $0xff93,%eax
55d4f5:	e8 e6 8a 01 00       	call   0x575fe0
55d4fa:	8b 14 24             	mov    (%esp),%edx
55d4fd:	85 c0                	test   %eax,%eax
55d4ff:	89 42 1c             	mov    %eax,0x1c(%edx)
55d502:	75 08                	jne    0x55d50c
55d504:	83 c8 ff             	or     $0xffffffff,%eax
55d507:	e9 2c 03 00 00       	jmp    0x55d838
55d50c:	8b 14 24             	mov    (%esp),%edx
55d50f:	8b 04 24             	mov    (%esp),%eax
55d512:	8b 4a 1c             	mov    0x1c(%edx),%ecx
55d515:	8b 50 10             	mov    0x10(%eax),%edx
55d518:	8b 04 24             	mov    (%esp),%eax
55d51b:	8b 40 20             	mov    0x20(%eax),%eax
55d51e:	e8 c5 89 01 00       	call   0x575ee8
55d523:	85 c0                	test   %eax,%eax
55d525:	74 1a                	je     0x55d541
55d527:	68 94 de 69 00       	push   $0x69de94
55d52c:	68 80 2e 6a 00       	push   $0x6a2e80
55d531:	e8 96 cb 01 00       	call   0x57a0cc
55d536:	83 c4 08             	add    $0x8,%esp
55d539:	83 c8 ff             	or     $0xffffffff,%eax
55d53c:	e9 f7 02 00 00       	jmp    0x55d838
55d541:	8b 14 24             	mov    (%esp),%edx
55d544:	8b 42 1c             	mov    0x1c(%edx),%eax
55d547:	e8 dc 8a 01 00       	call   0x576028
55d54c:	8b 14 24             	mov    (%esp),%edx
55d54f:	33 c9                	xor    %ecx,%ecx
55d551:	89 4a 1c             	mov    %ecx,0x1c(%edx)
55d554:	8b 04 24             	mov    (%esp),%eax
55d557:	8b 50 20             	mov    0x20(%eax),%edx
55d55a:	8b 4a 3c             	mov    0x3c(%edx),%ecx
55d55d:	89 4c 24 38          	mov    %ecx,0x38(%esp)
55d561:	8b 04 24             	mov    (%esp),%eax
55d564:	e8 8b 81 00 00       	call   0x5656f4
55d569:	85 c0                	test   %eax,%eax
55d56b:	74 0d                	je     0x55d57a
55d56d:	e8 d6 d5 ff ff       	call   0x55ab48
55d572:	83 c8 ff             	or     $0xffffffff,%eax
55d575:	e9 be 02 00 00       	jmp    0x55d838
55d57a:	8b 14 24             	mov    (%esp),%edx
55d57d:	8b 4a 08             	mov    0x8(%edx),%ecx
55d580:	89 4c 24 44          	mov    %ecx,0x44(%esp)
55d584:	8b 44 24 40          	mov    0x40(%esp),%eax
55d588:	8b 4c 24 40          	mov    0x40(%esp),%ecx
55d58c:	8b 50 0c             	mov    0xc(%eax),%edx
55d58f:	8b 41 04             	mov    0x4(%ecx),%eax
55d592:	2b d0                	sub    %eax,%edx
55d594:	89 54 24 70          	mov    %edx,0x70(%esp)
55d598:	33 d2                	xor    %edx,%edx
55d59a:	89 54 24 74          	mov    %edx,0x74(%esp)
55d59e:	8b 4c 24 40          	mov    0x40(%esp),%ecx
55d5a2:	8b 54 24 40          	mov    0x40(%esp),%edx
55d5a6:	df 6c 24 70          	fildll 0x70(%esp)
55d5aa:	8b 41 10             	mov    0x10(%ecx),%eax
55d5ad:	8b 4a 08             	mov    0x8(%edx),%ecx
55d5b0:	2b c1                	sub    %ecx,%eax
55d5b2:	89 44 24 78          	mov    %eax,0x78(%esp)
55d5b6:	33 c0                	xor    %eax,%eax
55d5b8:	89 44 24 7c          	mov    %eax,0x7c(%esp)
55d5bc:	8b 54 24 44          	mov    0x44(%esp),%edx
55d5c0:	8b 44 24 44          	mov    0x44(%esp),%eax
55d5c4:	df 6c 24 78          	fildll 0x78(%esp)
55d5c8:	8b 4a 0c             	mov    0xc(%edx),%ecx
55d5cb:	8b 50 04             	mov    0x4(%eax),%edx
55d5ce:	8b 44 24 44          	mov    0x44(%esp),%eax
55d5d2:	2b ca                	sub    %edx,%ecx
55d5d4:	de c9                	fmulp  %st,%st(1)
55d5d6:	8b 50 10             	mov    0x10(%eax),%edx
55d5d9:	8b 44 24 44          	mov    0x44(%esp),%eax
55d5dd:	8b 40 08             	mov    0x8(%eax),%eax
55d5e0:	2b d0                	sub    %eax,%edx
55d5e2:	0f af ca             	imul   %edx,%ecx
55d5e5:	89 8c 24 80 00 00 00 	mov    %ecx,0x80(%esp)
55d5ec:	33 d2                	xor    %edx,%edx
55d5ee:	89 94 24 84 00 00 00 	mov    %edx,0x84(%esp)
55d5f5:	33 d2                	xor    %edx,%edx
55d5f7:	df ac 24 80 00 00 00 	fildll 0x80(%esp)
55d5fe:	de f9                	fdivrp %st,%st(1)
55d600:	dd 5c 24 48          	fstpl  0x48(%esp)
55d604:	8b 4c 24 44          	mov    0x44(%esp),%ecx
55d608:	8b 81 dc 00 00 00    	mov    0xdc(%ecx),%eax
55d60e:	89 84 24 88 00 00 00 	mov    %eax,0x88(%esp)
55d615:	89 94 24 8c 00 00 00 	mov    %edx,0x8c(%esp)
55d61c:	df ac 24 88 00 00 00 	fildll 0x88(%esp)
55d623:	dc 4c 24 48          	fmull  0x48(%esp)
55d627:	e8 b4 d4 ff ff       	call   0x55aae0
55d62c:	8b 54 24 40          	mov    0x40(%esp),%edx
55d630:	33 db                	xor    %ebx,%ebx
55d632:	89 42 30             	mov    %eax,0x30(%edx)
55d635:	eb 46                	jmp    0x55d67d
55d637:	8b 44 24 40          	mov    0x40(%esp),%eax
55d63b:	33 c9                	xor    %ecx,%ecx
55d63d:	8b 50 30             	mov    0x30(%eax),%edx
55d640:	0f b7 c3             	movzwl %bx,%eax
55d643:	89 94 24 90 00 00 00 	mov    %edx,0x90(%esp)
55d64a:	89 8c 24 94 00 00 00 	mov    %ecx,0x94(%esp)
55d651:	8b 54 24 44          	mov    0x44(%esp),%edx
55d655:	df ac 24 90 00 00 00 	fildll 0x90(%esp)
55d65c:	8b 4a 44             	mov    0x44(%edx),%ecx
55d65f:	db 04 81             	fildl  (%ecx,%eax,4)
55d662:	d8 0d 44 d8 55 00    	fmuls  0x55d844
55d668:	de c9                	fmulp  %st,%st(1)
55d66a:	e8 71 d4 ff ff       	call   0x55aae0
55d66f:	0f b7 d3             	movzwl %bx,%edx
55d672:	8b 4c 24 40          	mov    0x40(%esp),%ecx
55d676:	43                   	inc    %ebx
55d677:	8b 49 24             	mov    0x24(%ecx),%ecx
55d67a:	89 04 91             	mov    %eax,(%ecx,%edx,4)
55d67d:	8b 54 24 40          	mov    0x40(%esp),%edx
55d681:	0f b7 c3             	movzwl %bx,%eax
55d684:	0f b7 52 16          	movzwl 0x16(%edx),%edx
55d688:	4a                   	dec    %edx
55d689:	3b c2                	cmp    %edx,%eax
55d68b:	7c aa                	jl     0x55d637
55d68d:	8b 44 24 44          	mov    0x44(%esp),%eax
55d691:	8b 88 d8 00 00 00    	mov    0xd8(%eax),%ecx
55d697:	83 f9 ff             	cmp    $0xffffffff,%ecx
55d69a:	74 23                	je     0x55d6bf
55d69c:	8b 04 24             	mov    (%esp),%eax
55d69f:	33 c9                	xor    %ecx,%ecx
55d6a1:	8b 50 18             	mov    0x18(%eax),%edx