4063a8:	cc                   	int3
4063a9:	cc                   	int3
4063aa:	cc                   	int3
4063ab:	cc                   	int3
4063ac:	cc                   	int3
4063ad:	cc                   	int3
4063ae:	cc                   	int3
4063af:	cc                   	int3
4063b0:	cc                   	int3
4063b1:	cc                   	int3
4063b2:	cc                   	int3
4063b3:	cc                   	int3
4063b4:	cc                   	int3
4063b5:	cc                   	int3
4063b6:	cc                   	int3
4063b7:	cc                   	int3
4063b8:	55                   	push   %ebp
4063b9:	8b ec                	mov    %esp,%ebp
4063bb:	56                   	push   %esi
4063bc:	8b 75 08             	mov    0x8(%ebp),%esi
4063bf:	33 c0                	xor    %eax,%eax
4063c1:	3b f0                	cmp    %eax,%esi
4063c3:	74 23                	je     0x4063e8
4063c5:	39 45 0c             	cmp    %eax,0xc(%ebp)
4063c8:	74 1e                	je     0x4063e8
4063ca:	ff 75 10             	push   0x10(%ebp)
4063cd:	66 89 06             	mov    %ax,(%esi)
4063d0:	56                   	push   %esi
4063d1:	6a ff                	push   $0xffffffff
4063d3:	ff 75 0c             	push   0xc(%ebp)
4063d6:	50                   	push   %eax
4063d7:	ff 75 14             	push   0x14(%ebp)
4063da:	ff 15 a4 03 4b 00    	call   *0x4b03a4
4063e0:	f7 d8                	neg    %eax
4063e2:	1b c0                	sbb    %eax,%eax
4063e4:	23 c6                	and    %esi,%eax
4063e6:	eb 02                	jmp    0x4063ea
4063e8:	33 c0                	xor    %eax,%eax
4063ea:	5e                   	pop    %esi
4063eb:	5d                   	pop    %ebp
4063ec:	c2 10 00             	ret    $0x10
4063ef:	55                   	push   %ebp
4063f0:	8b ec                	mov    %esp,%ebp
4063f2:	56                   	push   %esi
4063f3:	8b 75 08             	mov    0x8(%ebp),%esi
4063f6:	33 c0                	xor    %eax,%eax
4063f8:	3b f0                	cmp    %eax,%esi
4063fa:	74 24                	je     0x406420
4063fc:	39 45 0c             	cmp    %eax,0xc(%ebp)
4063ff:	74 1f                	je     0x406420
406401:	50                   	push   %eax
406402:	50                   	push   %eax
406403:	ff 75 10             	push   0x10(%ebp)
406406:	88 06                	mov    %al,(%esi)
406408:	56                   	push   %esi
406409:	6a ff                	push   $0xffffffff
40640b:	ff 75 0c             	push   0xc(%ebp)
40640e:	50                   	push   %eax
40640f:	ff 75 14             	push   0x14(%ebp)
406412:	ff 15 a0 03 4b 00    	call   *0x4b03a0
406418:	f7 d8                	neg    %eax
40641a:	1b c0                	sbb    %eax,%eax
40641c:	23 c6                	and    %esi,%eax
40641e:	eb 02                	jmp    0x406422
406420:	33 c0                	xor    %eax,%eax
406422:	5e                   	pop    %esi
406423:	5d                   	pop    %ebp
406424:	c2 10 00             	ret    $0x10
406427:	ff 74 24 04          	push   0x4(%esp)
40642b:	ff 15 90 03 4b 00    	call   *0x4b0390
406431:	c3                   	ret
406432:	ff 74 24 08          	push   0x8(%esp)
406436:	ff 15 90 03 4b 00    	call   *0x4b0390
40643c:	8d 44 00 02          	lea    0x2(%eax,%eax,1),%eax
406440:	50                   	push   %eax
406441:	ff 74 24 0c          	push   0xc(%esp)
406445:	ff 74 24 0c          	push   0xc(%esp)
406449:	e8 22 14 01 00       	call   0x417870
40644e:	83 c4 0c             	add    $0xc,%esp
406451:	c3                   	ret
406452:	c3                   	ret
406453:	e8 a9 74 06 00       	call   0x46d901
406458:	8b 40 10             	mov    0x10(%eax),%eax
40645b:	c3                   	ret
40645c:	56                   	push   %esi
40645d:	8b f1                	mov    %ecx,%esi
40645f:	e8 52 9b 03 00       	call   0x43ffb6
406464:	83 66 08 00          	andl   $0x0,0x8(%esi)
406468:	c7 06 d4 9b 48 00    	movl   $0x489bd4,(%esi)
40646e:	8b c6                	mov    %esi,%eax
406470:	5e                   	pop    %esi
406471:	c3                   	ret
406472:	33 c0                	xor    %eax,%eax
406474:	50                   	push   %eax
406475:	50                   	push   %eax
406476:	50                   	push   %eax
406477:	50                   	push   %eax
406478:	ff 74 24 18          	push   0x18(%esp)
40647c:	ff 74 24 18          	push   0x18(%esp)
406480:	50                   	push   %eax
406481:	ff 15 fc 70 4a 00    	call   *0x4a70fc
406487:	50                   	push   %eax
406488:	ff 15 a0 03 4b 00    	call   *0x4b03a0
40648e:	c3                   	ret
40648f:	33 c0                	xor    %eax,%eax
406491:	50                   	push   %eax
406492:	50                   	push   %eax
406493:	ff 74 24 10          	push   0x10(%esp)
406497:	ff 74 24 10          	push   0x10(%esp)
40649b:	ff 74 24 20          	push   0x20(%esp)
40649f:	ff 74 24 20          	push   0x20(%esp)
4064a3:	50                   	push   %eax
4064a4:	ff 15 fc 70 4a 00    	call   *0x4a70fc
4064aa:	50                   	push   %eax
4064ab:	ff 15 a0 03 4b 00    	call   *0x4b03a0
4064b1:	c3                   	ret
4064b2:	55                   	push   %ebp
4064b3:	8b ec                	mov    %esp,%ebp
4064b5:	51                   	push   %ecx
4064b6:	53                   	push   %ebx
4064b7:	56                   	push   %esi
4064b8:	57                   	push   %edi
4064b9:	ff 15 fc 70 4a 00    	call   *0x4a70fc
4064bf:	8b 75 0c             	mov    0xc(%ebp),%esi
4064c2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4064c6:	85 f6                	test   %esi,%esi
4064c8:	8b d8                	mov    %eax,%ebx
4064ca:	74 73                	je     0x40653f
4064cc:	8b 7d 08             	mov    0x8(%ebp),%edi
4064cf:	85 ff                	test   %edi,%edi
4064d1:	74 6c                	je     0x40653f
4064d3:	53                   	push   %ebx
4064d4:	6a 20                	push   $0x20
4064d6:	56                   	push   %esi
4064d7:	57                   	push   %edi
4064d8:	e8 db fe ff ff       	call   0x4063b8
4064dd:	6a 26                	push   $0x26
4064df:	8d 46 20             	lea    0x20(%esi),%eax
4064e2:	50                   	push   %eax
4064e3:	8d 47 40             	lea    0x40(%edi),%eax
4064e6:	50                   	push   %eax
4064e7:	e8 84 13 01 00       	call   0x417870
4064ec:	83 c4 0c             	add    $0xc,%esp
4064ef:	53                   	push   %ebx
4064f0:	6a 20                	push   $0x20
4064f2:	8d 46 46             	lea    0x46(%esi),%eax
4064f5:	50                   	push   %eax
4064f6:	8d 47 66             	lea    0x66(%edi),%eax
4064f9:	50                   	push   %eax
4064fa:	e8 b9 fe ff ff       	call   0x4063b8
4064ff:	6a 36                	push   $0x36
406501:	8d 46 66             	lea    0x66(%esi),%eax
406504:	50                   	push   %eax
406505:	8d 87 a6 00 00 00    	lea    0xa6(%edi),%eax
40650b:	50                   	push   %eax
40650c:	e8 5f 13 01 00       	call   0x417870
406511:	66 8b 46 26          	mov    0x26(%esi),%ax
406515:	83 c4 0c             	add    $0xc,%esp
406518:	66 85 c0             	test   %ax,%ax
40651b:	74 1a                	je     0x406537
40651d:	0f b7 c0             	movzwl %ax,%eax
406520:	50                   	push   %eax
406521:	81 c6 9c 00 00 00    	add    $0x9c,%esi
406527:	8d 87 dc 00 00 00    	lea    0xdc(%edi),%eax
40652d:	56                   	push   %esi
40652e:	50                   	push   %eax
40652f:	e8 3c 13 01 00       	call   0x417870
406534:	83 c4 0c             	add    $0xc,%esp
406537:	66 c7 47 44 dc 00    	movw   $0xdc,0x44(%edi)
40653d:	eb 02                	jmp    0x406541
40653f:	33 ff                	xor    %edi,%edi
406541:	8d 4d fc             	lea    -0x4(%ebp),%ecx
406544:	e8 be ad ff ff       	call   0x401307
406549:	8b c7                	mov    %edi,%eax
40654b:	5f                   	pop    %edi
40654c:	5e                   	pop    %esi
40654d:	5b                   	pop    %ebx
40654e:	c9                   	leave
40654f:	c3                   	ret
406550:	55                   	push   %ebp
406551:	8b ec                	mov    %esp,%ebp
406553:	51                   	push   %ecx
406554:	53                   	push   %ebx
406555:	56                   	push   %esi
406556:	57                   	push   %edi
406557:	ff 15 fc 70 4a 00    	call   *0x4a70fc
40655d:	8b 75 0c             	mov    0xc(%ebp),%esi
406560:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
406564:	85 f6                	test   %esi,%esi
406566:	8b d8                	mov    %eax,%ebx
406568:	74 73                	je     0x4065dd
40656a:	8b 7d 08             	mov    0x8(%ebp),%edi
40656d:	85 ff                	test   %edi,%edi
40656f:	74 6c                	je     0x4065dd
406571:	53                   	push   %ebx
406572:	6a 20                	push   $0x20
406574:	56                   	push   %esi
406575:	57                   	push   %edi
406576:	e8 74 fe ff ff       	call   0x4063ef
40657b:	6a 26                	push   $0x26
40657d:	8d 46 40             	lea    0x40(%esi),%eax
406580:	50                   	push   %eax
406581:	8d 47 20             	lea    0x20(%edi),%eax
406584:	50                   	push   %eax
406585:	e8 e6 12 01 00       	call   0x417870
40658a:	83 c4 0c             	add    $0xc,%esp
40658d:	53                   	push   %ebx
40658e:	6a 20                	push   $0x20
406590:	8d 46 66             	lea    0x66(%esi),%eax
406593:	50                   	push   %eax
406594:	8d 47 46             	lea    0x46(%edi),%eax
406597:	50                   	push   %eax
406598:	e8 52 fe ff ff       	call   0x4063ef
40659d:	6a 36                	push   $0x36
40659f:	8d 86 a6 00 00 00    	lea    0xa6(%esi),%eax
4065a5:	50                   	push   %eax
4065a6:	8d 47 66             	lea    0x66(%edi),%eax
4065a9:	50                   	push   %eax
4065aa:	e8 c1 12 01 00       	call   0x417870
4065af:	66 8b 46 46          	mov    0x46(%esi),%ax
4065b3:	83 c4 0c             	add    $0xc,%esp
4065b6:	66 85 c0             	test   %ax,%ax
4065b9:	74 1a                	je     0x4065d5
4065bb:	0f b7 c0             	movzwl %ax,%eax
4065be:	50                   	push   %eax
4065bf:	81 c6 dc 00 00 00    	add    $0xdc,%esi
4065c5:	8d 87 9c 00 00 00    	lea    0x9c(%edi),%eax
4065cb:	56                   	push   %esi
4065cc:	50                   	push   %eax
4065cd:	e8 9e 12 01 00       	call   0x417870
4065d2:	83 c4 0c             	add    $0xc,%esp
4065d5:	66 c7 47 24 9c 00    	movw   $0x9c,0x24(%edi)
4065db:	eb 02                	jmp    0x4065df
4065dd:	33 ff                	xor    %edi,%edi
4065df:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4065e2:	e8 20 ad ff ff       	call   0x401307
4065e7:	8b c7                	mov    %edi,%eax
4065e9:	5f                   	pop    %edi
4065ea:	5e                   	pop    %esi
4065eb:	5b                   	pop    %ebx
4065ec:	c9                   	leave
4065ed:	c2 08 00             	ret    $0x8
4065f0:	56                   	push   %esi
4065f1:	8b f1                	mov    %ecx,%esi
4065f3:	e8 14 00 00 00       	call   0x40660c
4065f8:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4065fd:	74 07                	je     0x406606
4065ff:	56                   	push   %esi
406600:	e8 7b 9a 03 00       	call   0x440080
406605:	59                   	pop    %ecx
406606:	8b c6                	mov    %esi,%eax
406608:	5e                   	pop    %esi
406609:	c2 04 00             	ret    $0x4
40660c:	c7 01 d4 9b 48 00    	movl   $0x489bd4,(%ecx)
406612:	c3                   	ret
406613:	53                   	push   %ebx
406614:	56                   	push   %esi
406615:	57                   	push   %edi
406616:	8b f9                	mov    %ecx,%edi
406618:	8b 07                	mov    (%edi),%eax
40661a:	8b 70 f4             	mov    -0xc(%eax),%esi
40661d:	8d 5e 01             	lea    0x1(%esi),%ebx
406620:	53                   	push   %ebx
406621:	e8 6a ab ff ff       	call   0x401190
406626:	8a 4c 24 10          	mov    0x10(%esp),%cl
40662a:	88 0c 30             	mov    %cl,(%eax,%esi,1)
40662d:	53                   	push   %ebx
40662e:	8b cf                	mov    %edi,%ecx
406630:	e8 60 ab ff ff       	call   0x401195
406635:	5f                   	pop    %edi
406636:	5e                   	pop    %esi
406637:	5b                   	pop    %ebx
406638:	c2 04 00             	ret    $0x4
40663b:	55                   	push   %ebp
40663c:	8b ec                	mov    %esp,%ebp
40663e:	51                   	push   %ecx
40663f:	53                   	push   %ebx
406640:	56                   	push   %esi
406641:	8b 75 08             	mov    0x8(%ebp),%esi
406644:	8b d9                	mov    %ecx,%ebx
406646:	8b 03                	mov    (%ebx),%eax
406648:	57                   	push   %edi
406649:	8b 78 f4             	mov    -0xc(%eax),%edi
40664c:	2b f0                	sub    %eax,%esi
40664e:	8b 45 0c             	mov    0xc(%ebp),%eax
406651:	03 c7                	add    %edi,%eax
406653:	50                   	push   %eax
406654:	89 45 fc             	mov    %eax,-0x4(%ebp)
406657:	e8 34 ab ff ff       	call   0x401190
40665c:	3b f7                	cmp    %edi,%esi
40665e:	77 04                	ja     0x406664
406660:	03 f0                	add    %eax,%esi
406662:	eb 03                	jmp    0x406667
406664:	8b 75 08             	mov    0x8(%ebp),%esi
406667:	ff 75 0c             	push   0xc(%ebp)
40666a:	03 c7                	add    %edi,%eax
40666c:	56                   	push   %esi
40666d:	50                   	push   %eax
40666e:	e8 fd 11 01 00       	call   0x417870
406673:	83 c4 0c             	add    $0xc,%esp
406676:	ff 75 fc             	push   -0x4(%ebp)
406679:	8b cb                	mov    %ebx,%ecx
40667b:	e8 15 ab ff ff       	call   0x401195
406680:	5f                   	pop    %edi
406681:	5e                   	pop    %esi
406682:	5b                   	pop    %ebx
406683:	c9                   	leave
406684:	c2 08 00             	ret    $0x8
406687:	56                   	push   %esi
406688:	ff 74 24 08          	push   0x8(%esp)
40668c:	8b f1                	mov    %ecx,%esi
40668e:	e8 80 ff ff ff       	call   0x406613
406693:	8b c6                	mov    %esi,%eax
406695:	5e                   	pop    %esi
406696:	c2 04 00             	ret    $0x4
406699:	56                   	push   %esi
40669a:	ff 74 24 08          	push   0x8(%esp)
40669e:	8b f1                	mov    %ecx,%esi
4066a0:	e8 6e ff ff ff       	call   0x406613
4066a5:	8b c6                	mov    %esi,%eax
4066a7:	5e                   	pop    %esi
4066a8:	c2 04 00             	ret    $0x4
4066ab:	c3                   	ret
4066ac:	c7 01 b4 9c 48 00    	movl   $0x489cb4,(%ecx)
4066b2:	c3                   	ret
4066b3:	c7 01 cc 9c 48 00    	movl   $0x489ccc,(%ecx)
4066b9:	c3                   	ret
4066ba:	c7 01 e4 9c 48 00    	movl   $0x489ce4,(%ecx)
4066c0:	c3                   	ret
4066c1:	ff 74 24 04          	push   0x4(%esp)
4066c5:	8b d1                	mov    %ecx,%edx
4066c7:	e8 f4 98 03 00       	call   0x43ffc0
4066cc:	83 62 0c 00          	andl   $0x0,0xc(%edx)
4066d0:	83 62 10 00          	andl   $0x0,0x10(%edx)
4066d4:	8b c2                	mov    %edx,%eax
4066d6:	c2 04 00             	ret    $0x4
4066d9:	56                   	push   %esi
4066da:	8b f1                	mov    %ecx,%esi
4066dc:	e8 cb ff ff ff       	call   0x4066ac
4066e1:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4066e6:	74 07                	je     0x4066ef
4066e8:	56                   	push   %esi
4066e9:	e8 92 99 03 00       	call   0x440080
4066ee:	59                   	pop    %ecx
4066ef:	8b c6                	mov    %esi,%eax
4066f1:	5e                   	pop    %esi
4066f2:	c2 04 00             	ret    $0x4
4066f5:	56                   	push   %esi
4066f6:	ff 74 24 08          	push   0x8(%esp)
4066fa:	8b f1                	mov    %ecx,%esi