4312cd:	33 c0                	xor    %eax,%eax
4312cf:	8a c3                	mov    %bl,%al
4312d1:	83 7c 86 08 00       	cmpl   $0x0,0x8(%esi,%eax,4)
4312d6:	75 1c                	jne    0x4312f4
4312d8:	8b fb                	mov    %ebx,%edi
4312da:	83 e7 7f             	and    $0x7f,%edi
4312dd:	8b 04 bd 38 da 45 00 	mov    0x45da38(,%edi,4),%eax
4312e4:	50                   	push   %eax
4312e5:	6a 00                	push   $0x0
4312e7:	a1 60 7d 46 00       	mov    0x467d60,%eax
4312ec:	8b 00                	mov    (%eax),%eax
4312ee:	ff d0                	call   *%eax
4312f0:	89 44 be 08          	mov    %eax,0x8(%esi,%edi,4)
4312f4:	33 c0                	xor    %eax,%eax
4312f6:	8a c3                	mov    %bl,%al
4312f8:	8b 44 86 08          	mov    0x8(%esi,%eax,4),%eax
4312fc:	5f                   	pop    %edi
4312fd:	5e                   	pop    %esi
4312fe:	5b                   	pop    %ebx
4312ff:	c3                   	ret
431300:	80 78 05 00          	cmpb   $0x0,0x5(%eax)
431304:	74 0c                	je     0x431312
431306:	80 78 06 00          	cmpb   $0x0,0x6(%eax)
43130a:	74 06                	je     0x431312
43130c:	80 78 04 00          	cmpb   $0x0,0x4(%eax)
431310:	75 03                	jne    0x431315
431312:	33 c0                	xor    %eax,%eax
431314:	c3                   	ret
431315:	b0 01                	mov    $0x1,%al
431317:	c3                   	ret
431318:	53                   	push   %ebx
431319:	66 83 78 6a 00       	cmpw   $0x0,0x6a(%eax)
43131e:	74 0a                	je     0x43132a
431320:	8b d8                	mov    %eax,%ebx
431322:	8b d0                	mov    %eax,%edx
431324:	8b 43 6c             	mov    0x6c(%ebx),%eax
431327:	ff 53 68             	call   *0x68(%ebx)
43132a:	5b                   	pop    %ebx
43132b:	c3                   	ret
43132c:	53                   	push   %ebx
43132d:	56                   	push   %esi
43132e:	57                   	push   %edi
43132f:	8b f0                	mov    %eax,%esi
431331:	33 db                	xor    %ebx,%ebx
431333:	8b fb                	mov    %ebx,%edi
431335:	83 e7 7f             	and    $0x7f,%edi
431338:	8b 44 be 08          	mov    0x8(%esi,%edi,4),%eax
43133c:	85 c0                	test   %eax,%eax
43133e:	74 10                	je     0x431350
431340:	50                   	push   %eax
431341:	a1 74 7e 46 00       	mov    0x467e74,%eax
431346:	8b 00                	mov    (%eax),%eax
431348:	ff d0                	call   *%eax
43134a:	33 c0                	xor    %eax,%eax
43134c:	89 44 be 08          	mov    %eax,0x8(%esi,%edi,4)
431350:	43                   	inc    %ebx
431351:	80 fb 18             	cmp    $0x18,%bl
431354:	75 dd                	jne    0x431333
431356:	5f                   	pop    %edi
431357:	5e                   	pop    %esi
431358:	5b                   	pop    %ebx
431359:	c3                   	ret
43135a:	8b c0                	mov    %eax,%eax
43135c:	53                   	push   %ebx
43135d:	8b d8                	mov    %eax,%ebx
43135f:	8b c3                	mov    %ebx,%eax
431361:	e8 52 08 00 00       	call   0x431bb8
431366:	8b c3                	mov    %ebx,%eax
431368:	8b 10                	mov    (%eax),%edx
43136a:	ff 12                	call   *(%edx)
43136c:	5b                   	pop    %ebx
43136d:	c3                   	ret
43136e:	8b c0                	mov    %eax,%eax
431370:	55                   	push   %ebp
431371:	8b ec                	mov    %esp,%ebp
431373:	83 c4 e4             	add    $0xffffffe4,%esp
431376:	53                   	push   %ebx
431377:	56                   	push   %esi
431378:	57                   	push   %edi
431379:	8b 75 0c             	mov    0xc(%ebp),%esi
43137c:	8d 7d e4             	lea    -0x1c(%ebp),%edi
43137f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431380:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431381:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431382:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431383:	8b f1                	mov    %ecx,%esi
431385:	8d 7d f4             	lea    -0xc(%ebp),%edi
431388:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431389:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43138a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43138b:	8b f2                	mov    %edx,%esi
43138d:	8b d8                	mov    %eax,%ebx
43138f:	8b 45 08             	mov    0x8(%ebp),%eax
431392:	50                   	push   %eax
431393:	8d 45 e4             	lea    -0x1c(%ebp),%eax
431396:	50                   	push   %eax
431397:	8b 45 fc             	mov    -0x4(%ebp),%eax
43139a:	50                   	push   %eax
43139b:	8b 45 f8             	mov    -0x8(%ebp),%eax
43139e:	50                   	push   %eax
43139f:	56                   	push   %esi
4313a0:	8a 55 f4             	mov    -0xc(%ebp),%dl
4313a3:	8b c3                	mov    %ebx,%eax
4313a5:	e8 16 ff ff ff       	call   0x4312c0
4313aa:	50                   	push   %eax
4313ab:	a1 bc 7d 46 00       	mov    0x467dbc,%eax
4313b0:	8b 00                	mov    (%eax),%eax
4313b2:	ff d0                	call   *%eax
4313b4:	5f                   	pop    %edi
4313b5:	5e                   	pop    %esi
4313b6:	5b                   	pop    %ebx
4313b7:	8b e5                	mov    %ebp,%esp
4313b9:	5d                   	pop    %ebp
4313ba:	c2 08 00             	ret    $0x8
4313bd:	8d 40 00             	lea    0x0(%eax),%eax
4313c0:	55                   	push   %ebp
4313c1:	8b ec                	mov    %esp,%ebp
4313c3:	83 c4 f4             	add    $0xfffffff4,%esp
4313c6:	53                   	push   %ebx
4313c7:	56                   	push   %esi
4313c8:	57                   	push   %edi
4313c9:	8b f1                	mov    %ecx,%esi
4313cb:	8d 7d f4             	lea    -0xc(%ebp),%edi
4313ce:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4313cf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4313d0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4313d1:	8b f2                	mov    %edx,%esi
4313d3:	8b d8                	mov    %eax,%ebx
4313d5:	8b 45 08             	mov    0x8(%ebp),%eax
4313d8:	50                   	push   %eax
4313d9:	8b 45 0c             	mov    0xc(%ebp),%eax
4313dc:	50                   	push   %eax
4313dd:	8b 45 10             	mov    0x10(%ebp),%eax
4313e0:	50                   	push   %eax
4313e1:	8b 45 14             	mov    0x14(%ebp),%eax
4313e4:	50                   	push   %eax
4313e5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4313e8:	50                   	push   %eax
4313e9:	8b 45 f8             	mov    -0x8(%ebp),%eax
4313ec:	50                   	push   %eax
4313ed:	56                   	push   %esi
4313ee:	8a 55 f4             	mov    -0xc(%ebp),%dl
4313f1:	8b c3                	mov    %ebx,%eax
4313f3:	e8 c8 fe ff ff       	call   0x4312c0
4313f8:	50                   	push   %eax
4313f9:	a1 98 7e 46 00       	mov    0x467e98,%eax
4313fe:	8b 00                	mov    (%eax),%eax
431400:	ff d0                	call   *%eax
431402:	5f                   	pop    %edi
431403:	5e                   	pop    %esi
431404:	5b                   	pop    %ebx
431405:	8b e5                	mov    %ebp,%esp
431407:	5d                   	pop    %ebp
431408:	c2 10 00             	ret    $0x10
43140b:	90                   	nop
43140c:	55                   	push   %ebp
43140d:	8b ec                	mov    %esp,%ebp
43140f:	83 c4 f4             	add    $0xfffffff4,%esp
431412:	53                   	push   %ebx
431413:	56                   	push   %esi
431414:	57                   	push   %edi
431415:	8b f1                	mov    %ecx,%esi
431417:	8d 7d f4             	lea    -0xc(%ebp),%edi
43141a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43141b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43141c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43141d:	8b f2                	mov    %edx,%esi
43141f:	8b d8                	mov    %eax,%ebx
431421:	8b 45 08             	mov    0x8(%ebp),%eax
431424:	50                   	push   %eax
431425:	8b 45 0c             	mov    0xc(%ebp),%eax
431428:	50                   	push   %eax
431429:	8b 45 fc             	mov    -0x4(%ebp),%eax
43142c:	50                   	push   %eax
43142d:	8b 45 f8             	mov    -0x8(%ebp),%eax
431430:	50                   	push   %eax
431431:	56                   	push   %esi
431432:	8a 55 f4             	mov    -0xc(%ebp),%dl
431435:	8b c3                	mov    %ebx,%eax
431437:	e8 84 fe ff ff       	call   0x4312c0
43143c:	50                   	push   %eax
43143d:	a1 60 7e 46 00       	mov    0x467e60,%eax
431442:	8b 00                	mov    (%eax),%eax
431444:	ff d0                	call   *%eax
431446:	5f                   	pop    %edi
431447:	5e                   	pop    %esi
431448:	5b                   	pop    %ebx
431449:	8b e5                	mov    %ebp,%esp
43144b:	5d                   	pop    %ebp
43144c:	c2 08 00             	ret    $0x8
43144f:	90                   	nop
431450:	55                   	push   %ebp
431451:	8b ec                	mov    %esp,%ebp
431453:	83 c4 f4             	add    $0xfffffff4,%esp
431456:	53                   	push   %ebx
431457:	56                   	push   %esi
431458:	57                   	push   %edi
431459:	8b f1                	mov    %ecx,%esi
43145b:	8d 7d f4             	lea    -0xc(%ebp),%edi
43145e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43145f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431460:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431461:	8b f2                	mov    %edx,%esi
431463:	8b d8                	mov    %eax,%ebx
431465:	8b 45 08             	mov    0x8(%ebp),%eax
431468:	50                   	push   %eax
431469:	8b 45 0c             	mov    0xc(%ebp),%eax
43146c:	50                   	push   %eax
43146d:	8b 45 10             	mov    0x10(%ebp),%eax
431470:	50                   	push   %eax
431471:	8b 45 fc             	mov    -0x4(%ebp),%eax
431474:	50                   	push   %eax
431475:	8b 45 f8             	mov    -0x8(%ebp),%eax
431478:	50                   	push   %eax
431479:	56                   	push   %esi
43147a:	8a 55 f4             	mov    -0xc(%ebp),%dl
43147d:	8b c3                	mov    %ebx,%eax
43147f:	e8 3c fe ff ff       	call   0x4312c0
431484:	50                   	push   %eax
431485:	a1 e8 7f 46 00       	mov    0x467fe8,%eax
43148a:	8b 00                	mov    (%eax),%eax
43148c:	ff d0                	call   *%eax
43148e:	5f                   	pop    %edi
43148f:	5e                   	pop    %esi
431490:	5b                   	pop    %ebx
431491:	8b e5                	mov    %ebp,%esp
431493:	5d                   	pop    %ebp
431494:	c2 0c 00             	ret    $0xc
431497:	90                   	nop
431498:	55                   	push   %ebp
431499:	8b ec                	mov    %esp,%ebp
43149b:	83 c4 f8             	add    $0xfffffff8,%esp
43149e:	53                   	push   %ebx
43149f:	56                   	push   %esi
4314a0:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4314a3:	89 55 fc             	mov    %edx,-0x4(%ebp)
4314a6:	8b f0                	mov    %eax,%esi
4314a8:	8b 45 10             	mov    0x10(%ebp),%eax
4314ab:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
4314af:	74 29                	je     0x4314da
4314b1:	85 c0                	test   %eax,%eax
4314b3:	74 25                	je     0x4314da
4314b5:	8b d8                	mov    %eax,%ebx
4314b7:	8b 43 08             	mov    0x8(%ebx),%eax
4314ba:	50                   	push   %eax
4314bb:	8b 43 04             	mov    0x4(%ebx),%eax
4314be:	50                   	push   %eax
4314bf:	8a 13                	mov    (%ebx),%dl
4314c1:	8b c6                	mov    %esi,%eax
4314c3:	e8 f8 fd ff ff       	call   0x4312c0
4314c8:	50                   	push   %eax
4314c9:	a1 4c 7d 46 00       	mov    0x467d4c,%eax
4314ce:	8b 00                	mov    (%eax),%eax
4314d0:	ff d0                	call   *%eax
4314d2:	83 f8 01             	cmp    $0x1,%eax
4314d5:	1b c0                	sbb    %eax,%eax
4314d7:	40                   	inc    %eax
4314d8:	eb 02                	jmp    0x4314dc
4314da:	b0 01                	mov    $0x1,%al
4314dc:	84 c0                	test   %al,%al
4314de:	74 15                	je     0x4314f5
4314e0:	8b 45 08             	mov    0x8(%ebp),%eax
4314e3:	50                   	push   %eax
4314e4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4314e7:	50                   	push   %eax
4314e8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4314eb:	50                   	push   %eax
4314ec:	a1 e4 7e 46 00       	mov    0x467ee4,%eax
4314f1:	8b 00                	mov    (%eax),%eax
4314f3:	ff d0                	call   *%eax
4314f5:	5e                   	pop    %esi
4314f6:	5b                   	pop    %ebx
4314f7:	59                   	pop    %ecx
4314f8:	59                   	pop    %ecx
4314f9:	5d                   	pop    %ebp
4314fa:	c2 0c 00             	ret    $0xc
4314fd:	8d 40 00             	lea    0x0(%eax),%eax
431500:	55                   	push   %ebp
431501:	8b ec                	mov    %esp,%ebp
431503:	83 c4 e4             	add    $0xffffffe4,%esp
431506:	53                   	push   %ebx
431507:	56                   	push   %esi
431508:	57                   	push   %edi
431509:	8b 75 10             	mov    0x10(%ebp),%esi
43150c:	8d 7d e4             	lea    -0x1c(%ebp),%edi
43150f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431510:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431511:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431512:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431513:	8b f1                	mov    %ecx,%esi
431515:	8d 7d f4             	lea    -0xc(%ebp),%edi
431518:	a5                   	movsl  %ds:(%esi),%es:(%edi)
431519:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43151a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43151b:	8b fa                	mov    %edx,%edi
43151d:	8b d8                	mov    %eax,%ebx
43151f:	8b 75 14             	mov    0x14(%ebp),%esi
431522:	8d 45 e4             	lea    -0x1c(%ebp),%eax
431525:	50                   	push   %eax
431526:	8b 45 08             	mov    0x8(%ebp),%eax
431529:	50                   	push   %eax
43152a:	8b 45 0c             	mov    0xc(%ebp),%eax
43152d:	50                   	push   %eax
43152e:	8b c6                	mov    %esi,%eax
431530:	e8 d3 32 fd ff       	call   0x404808
431535:	50                   	push   %eax
431536:	8b c6                	mov    %esi,%eax
431538:	e8 bb 32 fd ff       	call   0x4047f8
43153d:	50                   	push   %eax
43153e:	8b 45 fc             	mov    -0x4(%ebp),%eax
431541:	50                   	push   %eax
431542:	8b 45 f8             	mov    -0x8(%ebp),%eax
431545:	50                   	push   %eax
431546:	57                   	push   %edi
431547:	8a 55 f4             	mov    -0xc(%ebp),%dl
43154a:	8b c3                	mov    %ebx,%eax
43154c:	e8 6f fd ff ff       	call   0x4312c0
431551:	50                   	push   %eax
431552:	a1 a8 7f 46 00       	mov    0x467fa8,%eax
431557:	8b 00                	mov    (%eax),%eax
431559:	ff d0                	call   *%eax
43155b:	5f                   	pop    %edi
43155c:	5e                   	pop    %esi
43155d:	5b                   	pop    %ebx
43155e:	8b e5                	mov    %ebp,%esp
431560:	5d                   	pop    %ebp
431561:	c2 10 00             	ret    $0x10
431564:	c6 01 00             	movb   $0x0,(%ecx)
431567:	33 c0                	xor    %eax,%eax
431569:	8a c2                	mov    %dl,%al
43156b:	83 f8 0f             	cmp    $0xf,%eax
43156e:	7d 0f                	jge    0x43157f
431570:	83 c0 fe             	add    $0xfffffffe,%eax
431573:	83 e8 05             	sub    $0x5,%eax
431576:	72 18                	jb     0x431590
431578:	83 e8 08             	sub    $0x8,%eax
43157b:	72 21                	jb     0x43159e
43157d:	eb 57                	jmp    0x4315d6
43157f:	83 c0 f1             	add    $0xfffffff1,%eax
431582:	83 e8 0c             	sub    $0xc,%eax
431585:	72 25                	jb     0x4315ac
431587:	83 e8 02             	sub    $0x2,%eax
43158a:	72 2e                	jb     0x4315ba
43158c:	74 3a                	je     0x4315c8
43158e:	eb 46                	jmp    0x4315d6
431590:	c7 41 04 01 00 00 00 	movl   $0x1,0x4(%ecx)
431597:	b8 02 00 00 00       	mov    $0x2,%eax
43159c:	eb 3f                	jmp    0x4315dd
43159e:	c7 41 04 02 00 00 00 	movl   $0x2,0x4(%ecx)
4315a5:	b8 07 00 00 00       	mov    $0x7,%eax