402111:	7f 1c                	jg     0x40212f
402113:	57                   	push   %edi
402114:	56                   	push   %esi
402115:	89 3d 58 13 41 00    	mov    %edi,0x411358
40211b:	e8 90 f2 ff ff       	call   0x4013b0
402120:	83 c4 08             	add    $0x8,%esp
402123:	33 c0                	xor    %eax,%eax
402125:	5f                   	pop    %edi
402126:	5e                   	pop    %esi
402127:	5d                   	pop    %ebp
402128:	5b                   	pop    %ebx
402129:	83 c4 50             	add    $0x50,%esp
40212c:	c2 10 00             	ret    $0x10
40212f:	83 f8 25             	cmp    $0x25,%eax
402132:	7c 7f                	jl     0x4021b3
402134:	83 f8 71             	cmp    $0x71,%eax
402137:	7f 37                	jg     0x402170
402139:	bb 42 00 00 00       	mov    $0x42,%ebx
40213e:	2b d9                	sub    %ecx,%ebx
402140:	3b d3                	cmp    %ebx,%edx
402142:	7c 2c                	jl     0x402170
402144:	bb 4f 00 00 00       	mov    $0x4f,%ebx
402149:	2b d9                	sub    %ecx,%ebx
40214b:	3b d3                	cmp    %ebx,%edx
40214d:	7f 21                	jg     0x402170
40214f:	6a 01                	push   $0x1
402151:	56                   	push   %esi
402152:	c7 05 58 13 41 00 01 	movl   $0x1,0x411358
402159:	00 00 00
40215c:	e8 4f f2 ff ff       	call   0x4013b0
402161:	83 c4 08             	add    $0x8,%esp
402164:	33 c0                	xor    %eax,%eax
402166:	5f                   	pop    %edi
402167:	5e                   	pop    %esi
402168:	5d                   	pop    %ebp
402169:	5b                   	pop    %ebx
40216a:	83 c4 50             	add    $0x50,%esp
40216d:	c2 10 00             	ret    $0x10
402170:	83 f8 25             	cmp    $0x25,%eax
402173:	7c 3e                	jl     0x4021b3
402175:	3d 91 00 00 00       	cmp    $0x91,%eax
40217a:	7f 37                	jg     0x4021b3
40217c:	bb 57 00 00 00       	mov    $0x57,%ebx
402181:	2b d9                	sub    %ecx,%ebx
402183:	3b d3                	cmp    %ebx,%edx
402185:	7c 2c                	jl     0x4021b3
402187:	bb 64 00 00 00       	mov    $0x64,%ebx
40218c:	2b d9                	sub    %ecx,%ebx
40218e:	3b d3                	cmp    %ebx,%edx
402190:	7f 21                	jg     0x4021b3
402192:	6a 02                	push   $0x2
402194:	56                   	push   %esi
402195:	c7 05 58 13 41 00 02 	movl   $0x2,0x411358
40219c:	00 00 00
40219f:	e8 0c f2 ff ff       	call   0x4013b0
4021a4:	83 c4 08             	add    $0x8,%esp
4021a7:	33 c0                	xor    %eax,%eax
4021a9:	5f                   	pop    %edi
4021aa:	5e                   	pop    %esi
4021ab:	5d                   	pop    %ebp
4021ac:	5b                   	pop    %ebx
4021ad:	83 c4 50             	add    $0x50,%esp
4021b0:	c2 10 00             	ret    $0x10
4021b3:	83 f8 0c             	cmp    $0xc,%eax
4021b6:	7c 52                	jl     0x40220a
4021b8:	3d 1a 01 00 00       	cmp    $0x11a,%eax
4021bd:	7f 4b                	jg     0x40220a
4021bf:	b8 7a 00 00 00       	mov    $0x7a,%eax
4021c4:	2b c1                	sub    %ecx,%eax
4021c6:	3b d0                	cmp    %eax,%edx
4021c8:	7c 40                	jl     0x40220a
4021ca:	b8 8c 00 00 00       	mov    $0x8c,%eax
4021cf:	2b c1                	sub    %ecx,%eax
4021d1:	3b d0                	cmp    %eax,%edx
4021d3:	7f 35                	jg     0x40220a
4021d5:	8b 0d 64 13 41 00    	mov    0x411364,%ecx
4021db:	57                   	push   %edi
4021dc:	51                   	push   %ecx
4021dd:	56                   	push   %esi
4021de:	e8 2d f3 ff ff       	call   0x401510
4021e3:	0f bf 05 56 12 41 00 	movswl 0x411256,%eax
4021ea:	83 e8 0c             	sub    $0xc,%eax
4021ed:	6a 01                	push   $0x1
4021ef:	50                   	push   %eax
4021f0:	56                   	push   %esi
4021f1:	a3 64 13 41 00       	mov    %eax,0x411364
4021f6:	e8 15 f3 ff ff       	call   0x401510
4021fb:	83 c4 18             	add    $0x18,%esp
4021fe:	33 c0                	xor    %eax,%eax
402200:	5f                   	pop    %edi
402201:	5e                   	pop    %esi
402202:	5d                   	pop    %ebp
402203:	5b                   	pop    %ebx
402204:	83 c4 50             	add    $0x50,%esp
402207:	c2 10 00             	ret    $0x10
40220a:	5f                   	pop    %edi
40220b:	5e                   	pop    %esi
40220c:	5d                   	pop    %ebp
40220d:	c7 05 6c 13 41 00 01 	movl   $0x1,0x41136c
402214:	00 00 00
402217:	33 c0                	xor    %eax,%eax
402219:	5b                   	pop    %ebx
40221a:	83 c4 50             	add    $0x50,%esp
40221d:	c2 10 00             	ret    $0x10
402220:	3d 02 02 00 00       	cmp    $0x202,%eax
402225:	74 38                	je     0x40225f
402227:	3d 64 80 00 00       	cmp    $0x8064,%eax
40222c:	74 20                	je     0x40224e
40222e:	8b 54 24 70          	mov    0x70(%esp),%edx
402232:	8b 4c 24 6c          	mov    0x6c(%esp),%ecx
402236:	52                   	push   %edx
402237:	8b 54 24 68          	mov    0x68(%esp),%edx
40223b:	51                   	push   %ecx
40223c:	50                   	push   %eax
40223d:	52                   	push   %edx
40223e:	ff 15 84 d1 40 00    	call   *0x40d184
402244:	5f                   	pop    %edi
402245:	5e                   	pop    %esi
402246:	5d                   	pop    %ebp
402247:	5b                   	pop    %ebx
402248:	83 c4 50             	add    $0x50,%esp
40224b:	c2 10 00             	ret    $0x10
40224e:	e8 5d 04 00 00       	call   0x4026b0
402253:	5f                   	pop    %edi
402254:	5e                   	pop    %esi
402255:	5d                   	pop    %ebp
402256:	33 c0                	xor    %eax,%eax
402258:	5b                   	pop    %ebx
402259:	83 c4 50             	add    $0x50,%esp
40225c:	c2 10 00             	ret    $0x10
40225f:	ff 15 8c d1 40 00    	call   *0x40d18c
402265:	8b 4c 24 70          	mov    0x70(%esp),%ecx
402269:	8b 2d 60 12 41 00    	mov    0x411260,%ebp
40226f:	8b c1                	mov    %ecx,%eax
402271:	c7 05 a0 00 41 00 01 	movl   $0x1,0x4100a0
402278:	00 00 00
40227b:	c1 e8 10             	shr    $0x10,%eax
40227e:	66 a3 54 12 41 00    	mov    %ax,0x411254
402284:	66 89 0d 56 12 41 00 	mov    %cx,0x411256
40228b:	0f bf d0             	movswl %ax,%edx
40228e:	0f bf c1             	movswl %cx,%eax
402291:	3d b2 00 00 00       	cmp    $0xb2,%eax
402296:	7c 53                	jl     0x4022eb
402298:	3d 11 01 00 00       	cmp    $0x111,%eax
40229d:	7f 4c                	jg     0x4022eb
40229f:	bb 2d 00 00 00       	mov    $0x2d,%ebx
4022a4:	2b dd                	sub    %ebp,%ebx
4022a6:	3b d3                	cmp    %ebx,%edx
4022a8:	7e 41                	jle    0x4022eb
4022aa:	bf 47 00 00 00       	mov    $0x47,%edi
4022af:	2b fd                	sub    %ebp,%edi
4022b1:	3b d7                	cmp    %edi,%edx
4022b3:	7d 36                	jge    0x4022eb
4022b5:	0f bf 0d 52 12 41 00 	movswl 0x411252,%ecx
4022bc:	0f bf 35 50 12 41 00 	movswl 0x411250,%esi
4022c3:	81 f9 b2 00 00 00    	cmp    $0xb2,%ecx
4022c9:	7c 20                	jl     0x4022eb
4022cb:	81 f9 11 01 00 00    	cmp    $0x111,%ecx
4022d1:	7f 18                	jg     0x4022eb
4022d3:	3b f3                	cmp    %ebx,%esi
4022d5:	7e 14                	jle    0x4022eb
4022d7:	3b f7                	cmp    %edi,%esi
4022d9:	7d 10                	jge    0x4022eb
4022db:	8b 44 24 64          	mov    0x64(%esp),%eax
4022df:	6a 00                	push   $0x0
4022e1:	6a 00                	push   $0x0
4022e3:	68 64 80 00 00       	push   $0x8064
4022e8:	50                   	push   %eax
4022e9:	eb 53                	jmp    0x40233e
4022eb:	3d b2 00 00 00       	cmp    $0xb2,%eax
4022f0:	7c 52                	jl     0x402344
4022f2:	3d 11 01 00 00       	cmp    $0x111,%eax
4022f7:	7f 4b                	jg     0x402344
4022f9:	bf 51 00 00 00       	mov    $0x51,%edi
4022fe:	2b fd                	sub    %ebp,%edi
402300:	3b d7                	cmp    %edi,%edx
402302:	7e 40                	jle    0x402344
402304:	be 6b 00 00 00       	mov    $0x6b,%esi
402309:	2b f5                	sub    %ebp,%esi
40230b:	3b d6                	cmp    %esi,%edx
40230d:	7d 35                	jge    0x402344
40230f:	0f bf 05 52 12 41 00 	movswl 0x411252,%eax
402316:	0f bf 0d 50 12 41 00 	movswl 0x411250,%ecx
40231d:	3d b2 00 00 00       	cmp    $0xb2,%eax
402322:	7c 20                	jl     0x402344
402324:	3d 11 01 00 00       	cmp    $0x111,%eax
402329:	7f 19                	jg     0x402344
40232b:	3b cf                	cmp    %edi,%ecx
40232d:	7e 15                	jle    0x402344
40232f:	3b ce                	cmp    %esi,%ecx
402331:	7d 11                	jge    0x402344
402333:	8b 4c 24 64          	mov    0x64(%esp),%ecx
402337:	6a 00                	push   $0x0
402339:	6a 00                	push   $0x0
40233b:	6a 10                	push   $0x10
40233d:	51                   	push   %ecx
40233e:	ff 15 80 d1 40 00    	call   *0x40d180
402344:	a1 5c 13 41 00       	mov    0x41135c,%eax
402349:	33 f6                	xor    %esi,%esi
40234b:	3b c6                	cmp    %esi,%eax
40234d:	74 14                	je     0x402363
40234f:	8b 54 24 64          	mov    0x64(%esp),%edx
402353:	56                   	push   %esi
402354:	52                   	push   %edx
402355:	89 35 5c 13 41 00    	mov    %esi,0x41135c
40235b:	e8 70 f1 ff ff       	call   0x4014d0
402360:	83 c4 08             	add    $0x8,%esp
402363:	39 35 60 13 41 00    	cmp    %esi,0x411360
402369:	74 14                	je     0x40237f
40236b:	8b 44 24 64          	mov    0x64(%esp),%eax
40236f:	56                   	push   %esi
402370:	50                   	push   %eax
402371:	89 35 60 13 41 00    	mov    %esi,0x411360
402377:	e8 14 f1 ff ff       	call   0x401490
40237c:	83 c4 08             	add    $0x8,%esp
40237f:	5f                   	pop    %edi
402380:	5e                   	pop    %esi
402381:	5d                   	pop    %ebp
402382:	33 c0                	xor    %eax,%eax
402384:	5b                   	pop    %ebx
402385:	83 c4 50             	add    $0x50,%esp
402388:	c2 10 00             	ret    $0x10
40238b:	90                   	nop
40238c:	fd                   	std
40238d:	18 40 00             	sbb    %al,0x0(%eax)
402390:	d5 1a                	aad    $0x1a
402392:	40                   	inc    %eax
402393:	00 eb                	add    %ch,%bl
402395:	19 40 00             	sbb    %eax,0x0(%eax)
402398:	2e 22 40 00          	and    %cs:0x0(%eax),%al
40239c:	2e 22 40 00          	and    %cs:0x0(%eax),%al
4023a0:	2e 22 40 00          	and    %cs:0x0(%eax),%al
4023a4:	ad                   	lods   %ds:(%esi),%eax
4023a5:	19 40 00             	sbb    %eax,0x0(%eax)
4023a8:	6f                   	outsl  %ds:(%esi),(%dx)
4023a9:	19 40 00             	sbb    %eax,0x0(%eax)
4023ac:	90                   	nop
4023ad:	90                   	nop
4023ae:	90                   	nop
4023af:	90                   	nop
4023b0:	8b 44 24 08          	mov    0x8(%esp),%eax
4023b4:	83 ec 10             	sub    $0x10,%esp
4023b7:	3d 13 01 00 00       	cmp    $0x113,%eax
4023bc:	56                   	push   %esi
4023bd:	0f 87 cc 00 00 00    	ja     0x40248f
4023c3:	74 67                	je     0x40242c
4023c5:	83 e8 10             	sub    $0x10,%eax
4023c8:	74 49                	je     0x402413
4023ca:	2d 00 01 00 00       	sub    $0x100,%eax
4023cf:	74 2c                	je     0x4023fd
4023d1:	48                   	dec    %eax
4023d2:	0f 85 63 01 00 00    	jne    0x40253b
4023d8:	66 83 7c 24 20 02    	cmpw   $0x2,0x20(%esp)
4023de:	0f 85 57 01 00 00    	jne    0x40253b
4023e4:	8b 44 24 18          	mov    0x18(%esp),%eax
4023e8:	6a 02                	push   $0x2
4023ea:	50                   	push   %eax
4023eb:	ff 15 58 d1 40 00    	call   *0x40d158
4023f1:	b8 01 00 00 00       	mov    $0x1,%eax
4023f6:	5e                   	pop    %esi
4023f7:	83 c4 10             	add    $0x10,%esp
4023fa:	c2 10 00             	ret    $0x10
4023fd:	8b 4c 24 18          	mov    0x18(%esp),%ecx
402401:	b8 01 00 00 00       	mov    $0x1,%eax
402406:	89 0d 48 12 41 00    	mov    %ecx,0x411248
40240c:	5e                   	pop    %esi
40240d:	83 c4 10             	add    $0x10,%esp
402410:	c2 10 00             	ret    $0x10
402413:	8b 54 24 18          	mov    0x18(%esp),%edx
402417:	6a 00                	push   $0x0
402419:	52                   	push   %edx
40241a:	ff 15 58 d1 40 00    	call   *0x40d158
402420:	b8 01 00 00 00       	mov    $0x1,%eax
402425:	5e                   	pop    %esi
402426:	83 c4 10             	add    $0x10,%esp
402429:	c2 10 00             	ret    $0x10
40242c:	8b 0d 68 13 41 00    	mov    0x411368,%ecx
402432:	33 d2                	xor    %edx,%edx
402434:	8b c1                	mov    %ecx,%eax
402436:	be 3c 00 00 00       	mov    $0x3c,%esi
40243b:	f7 f6                	div    %esi
40243d:	8b c1                	mov    %ecx,%eax
40243f:	be 10 0e 00 00       	mov    $0xe10,%esi
402444:	52                   	push   %edx
402445:	33 d2                	xor    %edx,%edx
402447:	f7 f6                	div    %esi
402449:	b8 89 88 88 88       	mov    $0x88888889,%eax
40244e:	f7 e2                	mul    %edx
402450:	c1 ea 05             	shr    $0x5,%edx
402453:	b8 c5 b3 a2 91       	mov    $0x91a2b3c5,%eax
402458:	52                   	push   %edx
402459:	f7 e1                	mul    %ecx
40245b:	c1 ea 0b             	shr    $0xb,%edx
40245e:	52                   	push   %edx
40245f:	68 1c 01 41 00       	push   $0x41011c
402464:	68 30 12 41 00       	push   $0x411230
402469:	e8 b4 31 00 00       	call   0x405622
40246e:	8b 44 24 2c          	mov    0x2c(%esp),%eax
402472:	83 c4 14             	add    $0x14,%esp
402475:	68 30 12 41 00       	push   $0x411230
40247a:	68 e8 03 00 00       	push   $0x3e8
40247f:	50                   	push   %eax
402480:	ff 15 5c d1 40 00    	call   *0x40d15c
402486:	33 c0                	xor    %eax,%eax
402488:	5e                   	pop    %esi
402489:	83 c4 10             	add    $0x10,%esp
40248c:	c2 10 00             	ret    $0x10
40248f:	2d 00 02 00 00       	sub    $0x200,%eax
402494:	74 47                	je     0x4024dd
402496:	48                   	dec    %eax
402497:	74 16                	je     0x4024af
402499:	48                   	dec    %eax
40249a:	0f 85 9b 00 00 00    	jne    0x40253b
4024a0:	ff 15 8c d1 40 00    	call   *0x40d18c
4024a6:	33 c0                	xor    %eax,%eax
4024a8:	5e                   	pop    %esi
4024a9:	83 c4 10             	add    $0x10,%esp
4024ac:	c2 10 00             	ret    $0x10
4024af:	8b 44 24 24          	mov    0x24(%esp),%eax
4024b3:	8b 54 24 18          	mov    0x18(%esp),%edx
4024b7:	8b c8                	mov    %eax,%ecx
4024b9:	52                   	push   %edx
4024ba:	81 e1 ff ff 00 00    	and    $0xffff,%ecx
4024c0:	c1 e8 10             	shr    $0x10,%eax
4024c3:	89 0d 70 13 41 00    	mov    %ecx,0x411370
4024c9:	a3 74 13 41 00       	mov    %eax,0x411374
4024ce:	ff 15 88 d1 40 00    	call   *0x40d188
4024d4:	33 c0                	xor    %eax,%eax
4024d6:	5e                   	pop    %esi
4024d7:	83 c4 10             	add    $0x10,%esp
4024da:	c2 10 00             	ret    $0x10
4024dd:	f6 44 24 20 01       	testb  $0x1,0x20(%esp)
4024e2:	74 57                	je     0x40253b
4024e4:	8b 74 24 18          	mov    0x18(%esp),%esi
4024e8:	53                   	push   %ebx
4024e9:	8d 44 24 08          	lea    0x8(%esp),%eax
4024ed:	57                   	push   %edi
4024ee:	50                   	push   %eax
4024ef:	56                   	push   %esi
4024f0:	ff 15 74 d1 40 00    	call   *0x40d174
4024f6:	6a 01                	push   $0x1
4024f8:	8b 1d 74 13 41 00    	mov    0x411374,%ebx
4024fe:	8b 54 24 1c          	mov    0x1c(%esp),%edx
402502:	8b 4c 24 14          	mov    0x14(%esp),%ecx
402506:	8b 44 24 18          	mov    0x18(%esp),%eax
40250a:	2b d1                	sub    %ecx,%edx
40250c:	52                   	push   %edx
40250d:	8b 54 24 14          	mov    0x14(%esp),%edx
402511:	2b c2                	sub    %edx,%eax
402513:	50                   	push   %eax