464116:	39 4d f0             	cmp    %ecx,-0x10(%ebp)
464119:	7d 0a                	jge    0x464125
46411b:	8b c6                	mov    %esi,%eax
46411d:	2b c7                	sub    %edi,%eax
46411f:	40                   	inc    %eax
464120:	89 45 0c             	mov    %eax,0xc(%ebp)
464123:	eb 0b                	jmp    0x464130
464125:	2b fe                	sub    %esi,%edi
464127:	2b fb                	sub    %ebx,%edi
464129:	8d 44 07 01          	lea    0x1(%edi,%eax,1),%eax
46412d:	89 45 0c             	mov    %eax,0xc(%ebp)
464130:	3b c1                	cmp    %ecx,%eax
464132:	76 29                	jbe    0x46415d
464134:	ff 75 08             	push   0x8(%ebp)
464137:	8d 3c 1e             	lea    (%esi,%ebx,1),%edi
46413a:	8a 07                	mov    (%edi),%al
46413c:	56                   	push   %esi
46413d:	88 45 13             	mov    %al,0x13(%ebp)
464140:	c6 07 00             	movb   $0x0,(%edi)
464143:	ff 55 e4             	call   *-0x1c(%ebp)
464146:	85 c0                	test   %eax,%eax
464148:	8a 4d 13             	mov    0x13(%ebp),%cl
46414b:	88 0f                	mov    %cl,(%edi)
46414d:	74 3a                	je     0x464189
46414f:	ff 4d 0c             	decl   0xc(%ebp)
464152:	03 75 f0             	add    -0x10(%ebp),%esi
464155:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
464159:	88 0f                	mov    %cl,(%edi)
46415b:	77 d7                	ja     0x464134
46415d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
464160:	e8 9e f7 ff ff       	call   0x463903
464165:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
464169:	e8 93 97 00 00       	call   0x46d901
46416e:	8b 48 04             	mov    0x4(%eax),%ecx
464171:	e8 fb e2 fd ff       	call   0x442471
464176:	33 c0                	xor    %eax,%eax
464178:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46417b:	5f                   	pop    %edi
46417c:	5e                   	pop    %esi
46417d:	5b                   	pop    %ebx
46417e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
464185:	c9                   	leave
464186:	c2 0c 00             	ret    $0xc
464189:	8b 4d ec             	mov    -0x14(%ebp),%ecx
46418c:	e8 72 f7 ff ff       	call   0x463903
464191:	2b 75 dc             	sub    -0x24(%ebp),%esi
464194:	6a 00                	push   $0x0
464196:	8d 04 1e             	lea    (%esi,%ebx,1),%eax
464199:	50                   	push   %eax
46419a:	56                   	push   %esi
46419b:	8b 4d ec             	mov    -0x14(%ebp),%ecx
46419e:	e8 f9 1d fb ff       	call   0x415f9c
4641a3:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4641a7:	e8 55 97 00 00       	call   0x46d901
4641ac:	8b 48 04             	mov    0x4(%eax),%ecx
4641af:	e8 bd e2 fd ff       	call   0x442471
4641b4:	33 c0                	xor    %eax,%eax
4641b6:	40                   	inc    %eax
4641b7:	eb bf                	jmp    0x464178
4641b9:	56                   	push   %esi
4641ba:	8b f1                	mov    %ecx,%esi
4641bc:	68 61 08 47 00       	push   $0x470861
4641c1:	b9 e4 c6 4a 00       	mov    $0x4ac6e4,%ecx
4641c6:	e8 2f 9e 00 00       	call   0x46dffa
4641cb:	83 60 04 00          	andl   $0x0,0x4(%eax)
4641cf:	8b ce                	mov    %esi,%ecx
4641d1:	5e                   	pop    %esi
4641d2:	e9 06 da fe ff       	jmp    0x451bdd
4641d7:	56                   	push   %esi
4641d8:	57                   	push   %edi
4641d9:	8b f9                	mov    %ecx,%edi
4641db:	68 61 08 47 00       	push   $0x470861
4641e0:	b9 e4 c6 4a 00       	mov    $0x4ac6e4,%ecx
4641e5:	e8 10 9e 00 00       	call   0x46dffa
4641ea:	8b cf                	mov    %edi,%ecx
4641ec:	8b f0                	mov    %eax,%esi
4641ee:	e8 57 d2 fd ff       	call   0x44144a
4641f3:	85 c0                	test   %eax,%eax
4641f5:	74 0e                	je     0x464205
4641f7:	8b 46 0c             	mov    0xc(%esi),%eax
4641fa:	83 78 f4 00          	cmpl   $0x0,-0xc(%eax)
4641fe:	74 05                	je     0x464205
464200:	33 c0                	xor    %eax,%eax
464202:	40                   	inc    %eax
464203:	eb 02                	jmp    0x464207
464205:	33 c0                	xor    %eax,%eax
464207:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
46420b:	8b 11                	mov    (%ecx),%edx
46420d:	50                   	push   %eax
46420e:	ff 12                	call   *(%edx)
464210:	5f                   	pop    %edi
464211:	5e                   	pop    %esi
464212:	c2 04 00             	ret    $0x4
464215:	56                   	push   %esi
464216:	57                   	push   %edi
464217:	8b f9                	mov    %ecx,%edi
464219:	68 61 08 47 00       	push   $0x470861
46421e:	b9 e4 c6 4a 00       	mov    $0x4ac6e4,%ecx
464223:	e8 d2 9d 00 00       	call   0x46dffa
464228:	8b f0                	mov    %eax,%esi
46422a:	ff 76 14             	push   0x14(%esi)
46422d:	8b 46 0c             	mov    0xc(%esi),%eax
464230:	ff 76 18             	push   0x18(%esi)
464233:	8b cf                	mov    %edi,%ecx
464235:	50                   	push   %eax
464236:	e8 2b fd ff ff       	call   0x463f66
46423b:	85 c0                	test   %eax,%eax
46423d:	75 0d                	jne    0x46424c
46423f:	ff 76 0c             	push   0xc(%esi)
464242:	8b 07                	mov    (%edi),%eax
464244:	8b cf                	mov    %edi,%ecx
464246:	ff 90 8c 01 00 00    	call   *0x18c(%eax)
46424c:	5f                   	pop    %edi
46424d:	5e                   	pop    %esi
46424e:	c3                   	ret
46424f:	b8 e9 41 48 00       	mov    $0x4841e9,%eax
464254:	e8 23 3a fb ff       	call   0x417c7c
464259:	83 ec 10             	sub    $0x10,%esp
46425c:	53                   	push   %ebx
46425d:	56                   	push   %esi
46425e:	89 4d ec             	mov    %ecx,-0x14(%ebp)
464261:	68 61 08 47 00       	push   $0x470861
464266:	b9 e4 c6 4a 00       	mov    $0x4ac6e4,%ecx
46426b:	e8 8a 9d 00 00       	call   0x46dffa
464270:	8b f0                	mov    %eax,%esi
464272:	8b 46 04             	mov    0x4(%esi),%eax
464275:	33 db                	xor    %ebx,%ebx
464277:	3b c3                	cmp    %ebx,%eax
464279:	74 33                	je     0x4642ae
46427b:	8b 4d 08             	mov    0x8(%ebp),%ecx
46427e:	39 4e 08             	cmp    %ecx,0x8(%esi)
464281:	75 1e                	jne    0x4642a1
464283:	ff 70 1c             	push   0x1c(%eax)
464286:	ff 15 58 07 4b 00    	call   *0x4b0758
46428c:	50                   	push   %eax
46428d:	e8 10 0a fe ff       	call   0x444ca2
464292:	8b 4e 04             	mov    0x4(%esi),%ecx
464295:	6a 05                	push   $0x5
464297:	e8 cf ca fd ff       	call   0x440d6b
46429c:	e9 e3 00 00 00       	jmp    0x464384
4642a1:	53                   	push   %ebx
4642a2:	53                   	push   %ebx
4642a3:	6a 10                	push   $0x10
4642a5:	ff 70 1c             	push   0x1c(%eax)
4642a8:	ff 15 98 08 4b 00    	call   *0x4b0898
4642ae:	57                   	push   %edi
4642af:	e8 42 bf fd ff       	call   0x4401f6
4642b4:	8b 10                	mov    (%eax),%edx
4642b6:	8b c8                	mov    %eax,%ecx
4642b8:	ff 52 0c             	call   *0xc(%edx)
4642bb:	83 c0 10             	add    $0x10,%eax
4642be:	89 45 f0             	mov    %eax,-0x10(%ebp)
4642c1:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4642c4:	8d 45 f0             	lea    -0x10(%ebp),%eax
4642c7:	50                   	push   %eax
4642c8:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4642cb:	e8 89 fb ff ff       	call   0x463e59
4642d0:	8b 7d f0             	mov    -0x10(%ebp),%edi
4642d3:	39 5f f4             	cmp    %ebx,-0xc(%edi)
4642d6:	75 0f                	jne    0x4642e7
4642d8:	8d 46 0c             	lea    0xc(%esi),%eax
4642db:	50                   	push   %eax
4642dc:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4642df:	e8 0f d0 f9 ff       	call   0x4012f3
4642e4:	8b 7d f0             	mov    -0x10(%ebp),%edi
4642e7:	8d 46 10             	lea    0x10(%esi),%eax
4642ea:	50                   	push   %eax
4642eb:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4642ee:	e8 df cd f9 ff       	call   0x4010d2
4642f3:	68 98 01 00 00       	push   $0x198
4642f8:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4642fc:	e8 54 bd fd ff       	call   0x440055
464301:	59                   	pop    %ecx
464302:	89 45 e4             	mov    %eax,-0x1c(%ebp)
464305:	3b c3                	cmp    %ebx,%eax
464307:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
46430b:	74 09                	je     0x464316
46430d:	8b c8                	mov    %eax,%ecx
46430f:	e8 71 1d fd ff       	call   0x436085
464314:	eb 02                	jmp    0x464318
464316:	33 c0                	xor    %eax,%eax
464318:	39 5e 18             	cmp    %ebx,0x18(%esi)
46431b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46431f:	89 46 04             	mov    %eax,0x4(%esi)
464322:	b9 00 00 01 00       	mov    $0x10000,%ecx
464327:	74 01                	je     0x46432a
464329:	41                   	inc    %ecx
46432a:	39 5e 14             	cmp    %ebx,0x14(%esi)
46432d:	74 03                	je     0x464332
46432f:	83 c9 04             	or     $0x4,%ecx
464332:	ff 75 ec             	push   -0x14(%ebp)
464335:	8b 5d e8             	mov    -0x18(%ebp),%ebx
464338:	8b 10                	mov    (%eax),%edx
46433a:	51                   	push   %ecx
46433b:	53                   	push   %ebx
46433c:	57                   	push   %edi
46433d:	ff 75 08             	push   0x8(%ebp)
464340:	8b c8                	mov    %eax,%ecx
464342:	ff 92 58 01 00 00    	call   *0x158(%edx)
464348:	85 c0                	test   %eax,%eax
46434a:	75 05                	jne    0x464351
46434c:	21 46 04             	and    %eax,0x4(%esi)
46434f:	eb 22                	jmp    0x464373
464351:	8b 46 04             	mov    0x4(%esi),%eax
464354:	ff 70 1c             	push   0x1c(%eax)
464357:	ff 15 58 07 4b 00    	call   *0x4b0758
46435d:	50                   	push   %eax
46435e:	e8 3f 09 fe ff       	call   0x444ca2
464363:	8b 4e 04             	mov    0x4(%esi),%ecx
464366:	6a 05                	push   $0x5
464368:	e8 fe c9 fd ff       	call   0x440d6b
46436d:	8b 45 08             	mov    0x8(%ebp),%eax
464370:	89 46 08             	mov    %eax,0x8(%esi)
464373:	8d 4b f0             	lea    -0x10(%ebx),%ecx
464376:	e8 d7 cf f9 ff       	call   0x401352
46437b:	8d 4f f0             	lea    -0x10(%edi),%ecx
46437e:	e8 cf cf f9 ff       	call   0x401352
464383:	5f                   	pop    %edi
464384:	8b 4d f4             	mov    -0xc(%ebp),%ecx
464387:	5e                   	pop    %esi
464388:	5b                   	pop    %ebx
464389:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
464390:	c9                   	leave
464391:	c2 04 00             	ret    $0x4
464394:	55                   	push   %ebp
464395:	8b ec                	mov    %esp,%ebp
464397:	51                   	push   %ecx
464398:	51                   	push   %ecx
464399:	56                   	push   %esi
46439a:	57                   	push   %edi
46439b:	8b f9                	mov    %ecx,%edi
46439d:	68 61 08 47 00       	push   $0x470861
4643a2:	b9 e4 c6 4a 00       	mov    $0x4ac6e4,%ecx
4643a7:	e8 4e 9c 00 00       	call   0x46dffa
4643ac:	8b f0                	mov    %eax,%esi
4643ae:	8d 45 f8             	lea    -0x8(%ebp),%eax
4643b1:	50                   	push   %eax
4643b2:	8d 45 fc             	lea    -0x4(%ebp),%eax
4643b5:	50                   	push   %eax
4643b6:	68 b0 00 00 00       	push   $0xb0
4643bb:	ff 77 1c             	push   0x1c(%edi)
4643be:	ff 15 98 08 4b 00    	call   *0x4b0898
4643c4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4643c7:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4643ca:	8b 46 0c             	mov    0xc(%esi),%eax
4643cd:	8b cf                	mov    %edi,%ecx
4643cf:	75 05                	jne    0x4643d6
4643d1:	ff 76 14             	push   0x14(%esi)
4643d4:	eb 15                	jmp    0x4643eb
4643d6:	ff 76 14             	push   0x14(%esi)
4643d9:	50                   	push   %eax
4643da:	e8 e4 fa ff ff       	call   0x463ec3
4643df:	85 c0                	test   %eax,%eax
4643e1:	75 26                	jne    0x464409
4643e3:	8b 46 0c             	mov    0xc(%esi),%eax
4643e6:	ff 76 14             	push   0x14(%esi)
4643e9:	8b cf                	mov    %edi,%ecx
4643eb:	ff 76 18             	push   0x18(%esi)
4643ee:	50                   	push   %eax
4643ef:	e8 72 fb ff ff       	call   0x463f66
4643f4:	85 c0                	test   %eax,%eax
4643f6:	75 0d                	jne    0x464405
4643f8:	ff 76 0c             	push   0xc(%esi)
4643fb:	8b 07                	mov    (%edi),%eax
4643fd:	8b cf                	mov    %edi,%ecx
4643ff:	ff 90 8c 01 00 00    	call   *0x18c(%eax)
464405:	33 c0                	xor    %eax,%eax
464407:	eb 03                	jmp    0x46440c
464409:	33 c0                	xor    %eax,%eax
46440b:	40                   	inc    %eax
46440c:	5f                   	pop    %edi
46440d:	5e                   	pop    %esi
46440e:	c9                   	leave
46440f:	c3                   	ret
464410:	6a 01                	push   $0x1
464412:	e8 38 fe ff ff       	call   0x46424f
464417:	c3                   	ret
464418:	6a 00                	push   $0x0
46441a:	e8 30 fe ff ff       	call   0x46424f
46441f:	c3                   	ret
464420:	53                   	push   %ebx
464421:	56                   	push   %esi
464422:	57                   	push   %edi
464423:	8b d9                	mov    %ecx,%ebx
464425:	68 61 08 47 00       	push   $0x470861
46442a:	b9 e4 c6 4a 00       	mov    $0x4ac6e4,%ecx
46442f:	e8 c6 9b 00 00       	call   0x46dffa
464434:	ff 74 24 10          	push   0x10(%esp)
464438:	8b f0                	mov    %eax,%esi
46443a:	8d 7e 0c             	lea    0xc(%esi),%edi
46443d:	8b cf                	mov    %edi,%ecx
46443f:	e8 3d cd f9 ff       	call   0x401181
464444:	8b 44 24 18          	mov    0x18(%esp),%eax
464448:	8b 4c 24 14          	mov    0x14(%esp),%ecx
46444c:	8b 17                	mov    (%edi),%edx
46444e:	50                   	push   %eax
46444f:	51                   	push   %ecx
464450:	89 4e 18             	mov    %ecx,0x18(%esi)
464453:	52                   	push   %edx
464454:	8b cb                	mov    %ebx,%ecx
464456:	89 46 14             	mov    %eax,0x14(%esi)
464459:	e8 08 fb ff ff       	call   0x463f66
46445e:	85 c0                	test   %eax,%eax
464460:	75 0c                	jne    0x46446e
464462:	ff 37                	push   (%edi)
464464:	8b 03                	mov    (%ebx),%eax
464466:	8b cb                	mov    %ebx,%ecx
464468:	ff 90 8c 01 00 00    	call   *0x18c(%eax)
46446e:	5f                   	pop    %edi
46446f:	5e                   	pop    %esi
464470:	5b                   	pop    %ebx
464471:	c2 0c 00             	ret    $0xc
464474:	55                   	push   %ebp
464475:	8b ec                	mov    %esp,%ebp
464477:	51                   	push   %ecx
464478:	53                   	push   %ebx
464479:	56                   	push   %esi
46447a:	57                   	push   %edi
46447b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
46447e:	68 61 08 47 00       	push   $0x470861
464483:	b9 e4 c6 4a 00       	mov    $0x4ac6e4,%ecx
464488:	e8 6d 9b 00 00       	call   0x46dffa
46448d:	ff 75 08             	push   0x8(%ebp)
464490:	8b f0                	mov    %eax,%esi
464492:	8d 7e 0c             	lea    0xc(%esi),%edi
464495:	8b cf                	mov    %edi,%ecx
464497:	e8 e5 cc f9 ff       	call   0x401181
46449c:	ff 75 14             	push   0x14(%ebp)
46449f:	8d 5e 10             	lea    0x10(%esi),%ebx
4644a2:	8b cb                	mov    %ebx,%ecx
4644a4:	e8 d8 cc f9 ff       	call   0x401181
4644a9:	8b 45 10             	mov    0x10(%ebp),%eax
4644ac:	89 46 14             	mov    %eax,0x14(%esi)
4644af:	8b 45 0c             	mov    0xc(%ebp),%eax
4644b2:	89 46 18             	mov    %eax,0x18(%esi)
4644b5:	8b 75 fc             	mov    -0x4(%ebp),%esi
4644b8:	8b ce                	mov    %esi,%ecx
4644ba:	e8 d5 fe ff ff       	call   0x464394
4644bf:	85 c0                	test   %eax,%eax
4644c1:	74 21                	je     0x4644e4
4644c3:	ff 33                	push   (%ebx)
4644c5:	6a 00                	push   $0x0
4644c7:	68 c2 00 00 00       	push   $0xc2
4644cc:	ff 76 1c             	push   0x1c(%esi)
4644cf:	ff 15 98 08 4b 00    	call   *0x4b0898
4644d5:	ff 75 10             	push   0x10(%ebp)
4644d8:	8b ce                	mov    %esi,%ecx
4644da:	ff 75 0c             	push   0xc(%ebp)
4644dd:	ff 37                	push   (%edi)
4644df:	e8 82 fa ff ff       	call   0x463f66