40226b:	89 45 fc             	mov    %eax,-0x4(%ebp)
40226e:	89 75 f8             	mov    %esi,-0x8(%ebp)
402271:	89 55 f4             	mov    %edx,-0xc(%ebp)
402274:	3b 43 08             	cmp    0x8(%ebx),%eax
402277:	72 c9                	jb     0x402242
402279:	8b 75 ec             	mov    -0x14(%ebp),%esi
40227c:	8b 0b                	mov    (%ebx),%ecx
40227e:	85 c9                	test   %ecx,%ecx
402280:	74 06                	je     0x402288
402282:	51                   	push   %ecx
402283:	e8 2c fb ff ff       	call   0x401db4
402288:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40228b:	89 0b                	mov    %ecx,(%ebx)
40228d:	89 73 04             	mov    %esi,0x4(%ebx)
402290:	eb 02                	jmp    0x402294
402292:	8b 0b                	mov    (%ebx),%ecx
402294:	6b 43 08 30          	imul   $0x30,0x8(%ebx),%eax
402298:	8d 75 08             	lea    0x8(%ebp),%esi
40229b:	6a 0a                	push   $0xa
40229d:	03 c1                	add    %ecx,%eax
40229f:	59                   	pop    %ecx
4022a0:	8b f8                	mov    %eax,%edi
4022a2:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4022a4:	8d 4d 30             	lea    0x30(%ebp),%ecx
4022a7:	51                   	push   %ecx
4022a8:	8d 48 28             	lea    0x28(%eax),%ecx
4022ab:	e8 1c 0a 00 00       	call   0x402ccc
4022b0:	ff 43 08             	incl   0x8(%ebx)
4022b3:	8d 4d 30             	lea    0x30(%ebp),%ecx
4022b6:	e8 ab 0b 00 00       	call   0x402e66
4022bb:	5f                   	pop    %edi
4022bc:	5e                   	pop    %esi
4022bd:	5b                   	pop    %ebx
4022be:	c9                   	leave
4022bf:	c2 30 00             	ret    $0x30
4022c2:	55                   	push   %ebp
4022c3:	8b ec                	mov    %esp,%ebp
4022c5:	56                   	push   %esi
4022c6:	8b 75 0c             	mov    0xc(%ebp),%esi
4022c9:	57                   	push   %edi
4022ca:	8b f9                	mov    %ecx,%edi
4022cc:	3b 77 08             	cmp    0x8(%edi),%esi
4022cf:	0f 92 c1             	setb   %cl
4022d2:	e8 54 35 00 00       	call   0x40582b
4022d7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4022da:	6b c6 30             	imul   $0x30,%esi,%eax
4022dd:	03 07                	add    (%edi),%eax
4022df:	50                   	push   %eax
4022e0:	e8 b2 c7 00 00       	call   0x40ea97
4022e5:	8b 45 08             	mov    0x8(%ebp),%eax
4022e8:	5f                   	pop    %edi
4022e9:	5e                   	pop    %esi
4022ea:	5d                   	pop    %ebp
4022eb:	c2 08 00             	ret    $0x8
4022ee:	55                   	push   %ebp
4022ef:	8b ec                	mov    %esp,%ebp
4022f1:	51                   	push   %ecx
4022f2:	53                   	push   %ebx
4022f3:	8b 5d 08             	mov    0x8(%ebp),%ebx
4022f6:	56                   	push   %esi
4022f7:	8b f1                	mov    %ecx,%esi
4022f9:	57                   	push   %edi
4022fa:	8b 03                	mov    (%ebx),%eax
4022fc:	89 06                	mov    %eax,(%esi)
4022fe:	8d 4e 08             	lea    0x8(%esi),%ecx
402301:	8b 43 04             	mov    0x4(%ebx),%eax
402304:	89 46 04             	mov    %eax,0x4(%esi)
402307:	8d 43 08             	lea    0x8(%ebx),%eax
40230a:	50                   	push   %eax
40230b:	e8 bc 09 00 00       	call   0x402ccc
402310:	8d 7b 10             	lea    0x10(%ebx),%edi
402313:	57                   	push   %edi
402314:	8d 4e 10             	lea    0x10(%esi),%ecx
402317:	e8 48 0f 00 00       	call   0x403264
40231c:	8b 47 04             	mov    0x4(%edi),%eax
40231f:	8d 4e 1c             	lea    0x1c(%esi),%ecx
402322:	89 46 14             	mov    %eax,0x14(%esi)
402325:	8b 43 18             	mov    0x18(%ebx),%eax
402328:	89 46 18             	mov    %eax,0x18(%esi)
40232b:	8d 43 1c             	lea    0x1c(%ebx),%eax
40232e:	50                   	push   %eax
40232f:	e8 30 0f 00 00       	call   0x403264
402334:	8b 43 20             	mov    0x20(%ebx),%eax
402337:	8d 4e 24             	lea    0x24(%esi),%ecx
40233a:	89 46 20             	mov    %eax,0x20(%esi)
40233d:	8d 43 24             	lea    0x24(%ebx),%eax
402340:	50                   	push   %eax
402341:	e8 1e 0f 00 00       	call   0x403264
402346:	8d 43 28             	lea    0x28(%ebx),%eax
402349:	50                   	push   %eax
40234a:	8d 4e 28             	lea    0x28(%esi),%ecx
40234d:	e8 12 0f 00 00       	call   0x403264
402352:	8b 43 2c             	mov    0x2c(%ebx),%eax
402355:	8d 4e 30             	lea    0x30(%esi),%ecx
402358:	89 46 2c             	mov    %eax,0x2c(%esi)
40235b:	8d 43 30             	lea    0x30(%ebx),%eax
40235e:	50                   	push   %eax
40235f:	e8 00 0f 00 00       	call   0x403264
402364:	8b 43 34             	mov    0x34(%ebx),%eax
402367:	8d 4e 44             	lea    0x44(%esi),%ecx
40236a:	89 46 34             	mov    %eax,0x34(%esi)
40236d:	8b 43 38             	mov    0x38(%ebx),%eax
402370:	89 46 38             	mov    %eax,0x38(%esi)
402373:	8b 43 3c             	mov    0x3c(%ebx),%eax
402376:	89 46 3c             	mov    %eax,0x3c(%esi)
402379:	8b 43 40             	mov    0x40(%ebx),%eax
40237c:	89 46 40             	mov    %eax,0x40(%esi)
40237f:	8d 43 44             	lea    0x44(%ebx),%eax
402382:	50                   	push   %eax
402383:	e8 44 09 00 00       	call   0x402ccc
402388:	5f                   	pop    %edi
402389:	8b c6                	mov    %esi,%eax
40238b:	5e                   	pop    %esi
40238c:	5b                   	pop    %ebx
40238d:	c9                   	leave
40238e:	c2 04 00             	ret    $0x4
402391:	56                   	push   %esi
402392:	8b f1                	mov    %ecx,%esi
402394:	e8 3c dc 00 00       	call   0x40ffd5
402399:	8b c6                	mov    %esi,%eax
40239b:	5e                   	pop    %esi
40239c:	c2 04 00             	ret    $0x4
40239f:	55                   	push   %ebp
4023a0:	8b ec                	mov    %esp,%ebp
4023a2:	56                   	push   %esi
4023a3:	8b f1                	mov    %ecx,%esi
4023a5:	57                   	push   %edi
4023a6:	8b 4e 08             	mov    0x8(%esi),%ecx
4023a9:	3b 4e 04             	cmp    0x4(%esi),%ecx
4023ac:	72 3f                	jb     0x4023ed
4023ae:	53                   	push   %ebx
4023af:	8d 59 01             	lea    0x1(%ecx),%ebx
4023b2:	33 c9                	xor    %ecx,%ecx
4023b4:	0f af 5e 0c          	imul   0xc(%esi),%ebx
4023b8:	6a 04                	push   $0x4
4023ba:	5a                   	pop    %edx
4023bb:	8b c3                	mov    %ebx,%eax
4023bd:	f7 e2                	mul    %edx
4023bf:	0f 90 c1             	seto   %cl
4023c2:	f7 d9                	neg    %ecx
4023c4:	0b c8                	or     %eax,%ecx
4023c6:	e8 10 37 00 00       	call   0x405adb
4023cb:	33 d2                	xor    %edx,%edx
4023cd:	8b f8                	mov    %eax,%edi
4023cf:	39 56 08             	cmp    %edx,0x8(%esi)
4023d2:	76 0e                	jbe    0x4023e2
4023d4:	8b 0e                	mov    (%esi),%ecx
4023d6:	8b 04 91             	mov    (%ecx,%edx,4),%eax
4023d9:	89 04 97             	mov    %eax,(%edi,%edx,4)
4023dc:	42                   	inc    %edx
4023dd:	3b 56 08             	cmp    0x8(%esi),%edx
4023e0:	72 f2                	jb     0x4023d4
4023e2:	8b 4e 08             	mov    0x8(%esi),%ecx
4023e5:	89 5e 04             	mov    %ebx,0x4(%esi)
4023e8:	89 3e                	mov    %edi,(%esi)
4023ea:	5b                   	pop    %ebx
4023eb:	eb 02                	jmp    0x4023ef
4023ed:	8b 3e                	mov    (%esi),%edi
4023ef:	8b 45 08             	mov    0x8(%ebp),%eax
4023f2:	89 04 8f             	mov    %eax,(%edi,%ecx,4)
4023f5:	ff 46 08             	incl   0x8(%esi)
4023f8:	5f                   	pop    %edi
4023f9:	5e                   	pop    %esi
4023fa:	5d                   	pop    %ebp
4023fb:	c2 04 00             	ret    $0x4
4023fe:	56                   	push   %esi
4023ff:	8b f1                	mov    %ecx,%esi
402401:	8b 16                	mov    (%esi),%edx
402403:	85 d2                	test   %edx,%edx
402405:	74 09                	je     0x402410
402407:	8b 02                	mov    (%edx),%eax
402409:	52                   	push   %edx
40240a:	ff 50 08             	call   *0x8(%eax)
40240d:	83 26 00             	andl   $0x0,(%esi)
402410:	5e                   	pop    %esi
402411:	c3                   	ret
402412:	56                   	push   %esi
402413:	8b f1                	mov    %ecx,%esi
402415:	e8 57 e9 00 00       	call   0x410d71
40241a:	8b c6                	mov    %esi,%eax
40241c:	5e                   	pop    %esi
40241d:	c2 04 00             	ret    $0x4
402420:	56                   	push   %esi
402421:	8b f1                	mov    %ecx,%esi
402423:	e8 76 eb 00 00       	call   0x410f9e
402428:	8b c6                	mov    %esi,%eax
40242a:	5e                   	pop    %esi
40242b:	c2 04 00             	ret    $0x4
40242e:	56                   	push   %esi
40242f:	8b f1                	mov    %ecx,%esi
402431:	e8 28 ec 00 00       	call   0x41105e
402436:	8b c6                	mov    %esi,%eax
402438:	5e                   	pop    %esi
402439:	c2 04 00             	ret    $0x4
40243c:	56                   	push   %esi
40243d:	8b f1                	mov    %ecx,%esi
40243f:	e8 21 ed 00 00       	call   0x411165
402444:	8b c6                	mov    %esi,%eax
402446:	5e                   	pop    %esi
402447:	c2 04 00             	ret    $0x4
40244a:	c7 01 68 49 41 00    	movl   $0x414968,(%ecx)
402450:	8b c1                	mov    %ecx,%eax
402452:	c2 04 00             	ret    $0x4
402455:	c7 01 70 49 41 00    	movl   $0x414970,(%ecx)
40245b:	8b c1                	mov    %ecx,%eax
40245d:	c2 04 00             	ret    $0x4
402460:	56                   	push   %esi
402461:	8b f1                	mov    %ecx,%esi
402463:	57                   	push   %edi
402464:	33 ff                	xor    %edi,%edi
402466:	8d 4e 08             	lea    0x8(%esi),%ecx
402469:	89 3e                	mov    %edi,(%esi)
40246b:	89 7e 04             	mov    %edi,0x4(%esi)
40246e:	e8 f9 b8 00 00       	call   0x40dd6c
402473:	89 7e 10             	mov    %edi,0x10(%esi)
402476:	8b c6                	mov    %esi,%eax
402478:	89 7e 14             	mov    %edi,0x14(%esi)
40247b:	5f                   	pop    %edi
40247c:	5e                   	pop    %esi
40247d:	c3                   	ret
40247e:	56                   	push   %esi
40247f:	8b f1                	mov    %ecx,%esi
402481:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
402485:	74 09                	je     0x402490
402487:	ff 76 10             	push   0x10(%esi)
40248a:	ff 15 00 22 41 00    	call   *0x412200
402490:	8b 4e 0c             	mov    0xc(%esi),%ecx
402493:	e8 95 35 00 00       	call   0x405a2d
402498:	8b ce                	mov    %esi,%ecx
40249a:	5e                   	pop    %esi
40249b:	e9 c6 09 00 00       	jmp    0x402e66
4024a0:	c7 01 78 49 41 00    	movl   $0x414978,(%ecx)
4024a6:	8b c1                	mov    %ecx,%eax
4024a8:	c2 04 00             	ret    $0x4
4024ab:	c7 01 80 49 41 00    	movl   $0x414980,(%ecx)
4024b1:	8b c1                	mov    %ecx,%eax
4024b3:	c2 04 00             	ret    $0x4
4024b6:	55                   	push   %ebp
4024b7:	8b ec                	mov    %esp,%ebp
4024b9:	8b 45 08             	mov    0x8(%ebp),%eax
4024bc:	8b 00                	mov    (%eax),%eax
4024be:	8b 00                	mov    (%eax),%eax
4024c0:	89 41 04             	mov    %eax,0x4(%ecx)
4024c3:	5d                   	pop    %ebp
4024c4:	c2 04 00             	ret    $0x4
4024c7:	c7 01 00 26 41 00    	movl   $0x412600,(%ecx)
4024cd:	c3                   	ret
4024ce:	83 49 04 ff          	orl    $0xffffffff,0x4(%ecx)
4024d2:	8b c1                	mov    %ecx,%eax
4024d4:	c7 01 00 26 41 00    	movl   $0x412600,(%ecx)
4024da:	c3                   	ret
4024db:	55                   	push   %ebp
4024dc:	8b ec                	mov    %esp,%ebp
4024de:	51                   	push   %ecx
4024df:	51                   	push   %ecx
4024e0:	8d 45 fc             	lea    -0x4(%ebp),%eax
4024e3:	c7 45 fc 70 49 41 00 	movl   $0x414970,-0x4(%ebp)
4024ea:	50                   	push   %eax
4024eb:	e8 63 26 00 00       	call   0x404b53
4024f0:	c9                   	leave
4024f1:	c3                   	ret
4024f2:	55                   	push   %ebp
4024f3:	8b ec                	mov    %esp,%ebp
4024f5:	51                   	push   %ecx
4024f6:	56                   	push   %esi
4024f7:	33 f6                	xor    %esi,%esi
4024f9:	39 72 04             	cmp    %esi,0x4(%edx)
4024fc:	75 27                	jne    0x402525
4024fe:	8d 42 08             	lea    0x8(%edx),%eax
402501:	50                   	push   %eax
402502:	8d 4d fc             	lea    -0x4(%ebp),%ecx
402505:	e8 50 0f 00 00       	call   0x40345a
40250a:	6a 05                	push   $0x5
40250c:	56                   	push   %esi
40250d:	56                   	push   %esi
40250e:	ff 75 fc             	push   -0x4(%ebp)
402511:	68 48 26 41 00       	push   $0x412648
402516:	56                   	push   %esi
402517:	ff 15 44 22 41 00    	call   *0x412244
40251d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
402520:	e8 08 35 00 00       	call   0x405a2d
402525:	5e                   	pop    %esi
402526:	c9                   	leave
402527:	c3                   	ret
402528:	55                   	push   %ebp
402529:	8b ec                	mov    %esp,%ebp
40252b:	51                   	push   %ecx
40252c:	51                   	push   %ecx
40252d:	8b 45 08             	mov    0x8(%ebp),%eax
402530:	8b ca                	mov    %edx,%ecx
402532:	56                   	push   %esi
402533:	8b 70 04             	mov    0x4(%eax),%esi
402536:	8d 45 08             	lea    0x8(%ebp),%eax
402539:	50                   	push   %eax
40253a:	8d 45 f8             	lea    -0x8(%ebp),%eax
40253d:	50                   	push   %eax
40253e:	e8 b2 32 00 00       	call   0x4057f5
402543:	8b c8                	mov    %eax,%ecx
402545:	e8 37 0e 00 00       	call   0x403381
40254a:	56                   	push   %esi
40254b:	ff 30                	push   (%eax)
40254d:	e8 04 ab 00 00       	call   0x40d056
402552:	8b 4d 08             	mov    0x8(%ebp),%ecx
402555:	e8 d3 34 00 00       	call   0x405a2d
40255a:	8b 4d f8             	mov    -0x8(%ebp),%ecx
40255d:	e8 cb 34 00 00       	call   0x405a2d
402562:	5e                   	pop    %esi
402563:	c9                   	leave
402564:	c3                   	ret
402565:	c3                   	ret
402566:	55                   	push   %ebp
402567:	8b ec                	mov    %esp,%ebp
402569:	83 ec 30             	sub    $0x30,%esp
40256c:	8b 45 08             	mov    0x8(%ebp),%eax
40256f:	53                   	push   %ebx
402570:	56                   	push   %esi
402571:	57                   	push   %edi
402572:	8b 58 04             	mov    0x4(%eax),%ebx
402575:	8b f1                	mov    %ecx,%esi
402577:	8d 45 08             	lea    0x8(%ebp),%eax
40257a:	8b ca                	mov    %edx,%ecx
40257c:	50                   	push   %eax
40257d:	8d 45 f4             	lea    -0xc(%ebp),%eax
402580:	50                   	push   %eax
402581:	e8 6f 32 00 00       	call   0x4057f5
402586:	8b c8                	mov    %eax,%ecx
402588:	e8 f4 0d 00 00       	call   0x403381
40258d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
402590:	e8 98 34 00 00       	call   0x405a2d
402595:	ff 75 08             	push   0x8(%ebp)
402598:	ff 15 fc 22 41 00    	call   *0x4122fc
40259e:	83 f8 ff             	cmp    $0xffffffff,%eax
4025a1:	75 38                	jne    0x4025db
4025a3:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4025a7:	8d 7d d4             	lea    -0x2c(%ebp),%edi
4025aa:	6a 08                	push   $0x8
4025ac:	59                   	pop    %ecx
4025ad:	33 c0                	xor    %eax,%eax
4025af:	f3 ab                	rep stos %eax,%es:(%edi)
4025b1:	8d 45 f8             	lea    -0x8(%ebp),%eax
4025b4:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
4025bb:	50                   	push   %eax
4025bc:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4025bf:	c7 45 e0 06 00 00 00 	movl   $0x6,-0x20(%ebp)
4025c6:	50                   	push   %eax
4025c7:	6a 00                	push   $0x0
4025c9:	ff 75 08             	push   0x8(%ebp)
4025cc:	ff 15 00 23 41 00    	call   *0x412300
4025d2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4025d5:	8b 40 18             	mov    0x18(%eax),%eax