4144a2:	3d ea 00 00 00       	cmp    $0xea,%eax
4144a7:	0f 84 15 dc 00 00    	je     0x4220c2
4144ad:	85 c0                	test   %eax,%eax
4144af:	75 15                	jne    0x4144c6
4144b1:	ff 75 ec             	push   -0x14(%ebp)
4144b4:	8b ce                	mov    %esi,%ecx
4144b6:	e8 49 fc ff ff       	call   0x414104
4144bb:	33 c0                	xor    %eax,%eax
4144bd:	40                   	inc    %eax
4144be:	e8 19 69 00 00       	call   0x41addc
4144c3:	c2 08 00             	ret    $0x8
4144c6:	50                   	push   %eax
4144c7:	ff 15 ac a0 43 00    	call   *0x43a0ac
4144cd:	33 c0                	xor    %eax,%eax
4144cf:	eb ed                	jmp    0x4144be
4144d1:	6a 06                	push   $0x6
4144d3:	eb f2                	jmp    0x4144c7
4144d5:	6a 04                	push   $0x4
4144d7:	b8 fc e2 41 00       	mov    $0x41e2fc,%eax
4144dc:	e8 2d 69 00 00       	call   0x41ae0e
4144e1:	8b f9                	mov    %ecx,%edi
4144e3:	8b 8f 18 04 00 00    	mov    0x418(%edi),%ecx
4144e9:	85 c9                	test   %ecx,%ecx
4144eb:	0f 84 03 dc 00 00    	je     0x4220f4
4144f1:	ff b7 e4 09 00 00    	push   0x9e4(%edi)
4144f7:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
4144fb:	8d 45 f0             	lea    -0x10(%ebp),%eax
4144fe:	ff b7 e0 09 00 00    	push   0x9e0(%edi)
414504:	6a 04                	push   $0x4
414506:	50                   	push   %eax
414507:	e8 9d 00 00 00       	call   0x4145a9
41450c:	8b 5d f0             	mov    -0x10(%ebp),%ebx
41450f:	8b c8                	mov    %eax,%ecx
414511:	85 c9                	test   %ecx,%ecx
414513:	78 28                	js     0x41453d
414515:	3b 9f 0c 04 00 00    	cmp    0x40c(%edi),%ebx
41451b:	77 47                	ja     0x414564
41451d:	ff b7 e4 09 00 00    	push   0x9e4(%edi)
414523:	8b 8f 18 04 00 00    	mov    0x418(%edi),%ecx
414529:	ff b7 e0 09 00 00    	push   0x9e0(%edi)
41452f:	53                   	push   %ebx
414530:	ff b7 04 04 00 00    	push   0x404(%edi)
414536:	e8 6e 00 00 00       	call   0x4145a9
41453b:	8b c8                	mov    %eax,%ecx
41453d:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
414543:	83 a7 d8 09 00 00 00 	andl   $0x0,0x9d8(%edi)
41454a:	89 87 d4 09 00 00    	mov    %eax,0x9d4(%edi)
414550:	8b c1                	mov    %ecx,%eax
414552:	89 9f 10 04 00 00    	mov    %ebx,0x410(%edi)
414558:	89 9f dc 09 00 00    	mov    %ebx,0x9dc(%edi)
41455e:	e8 79 68 00 00       	call   0x41addc
414563:	c3                   	ret
414564:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
41456a:	3b 87 08 04 00 00    	cmp    0x408(%edi),%eax
414570:	0f 84 88 db 00 00    	je     0x4220fe
414576:	8b 35 3c 1a 40 00    	mov    0x401a3c,%esi
41457c:	8b ce                	mov    %esi,%ecx
41457e:	53                   	push   %ebx
41457f:	ff 15 20 a5 43 00    	call   *0x43a520
414585:	ff d6                	call   *%esi
414587:	89 87 04 04 00 00    	mov    %eax,0x404(%edi)
41458d:	85 c0                	test   %eax,%eax
41458f:	74 11                	je     0x4145a2
414591:	89 87 08 04 00 00    	mov    %eax,0x408(%edi)
414597:	89 9f 0c 04 00 00    	mov    %ebx,0x40c(%edi)
41459d:	e9 7b ff ff ff       	jmp    0x41451d
4145a2:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
4145a7:	eb b5                	jmp    0x41455e
4145a9:	8b ff                	mov    %edi,%edi
4145ab:	55                   	push   %ebp
4145ac:	8b ec                	mov    %esp,%ebp
4145ae:	83 e4 f8             	and    $0xfffffff8,%esp
4145b1:	51                   	push   %ecx
4145b2:	53                   	push   %ebx
4145b3:	56                   	push   %esi
4145b4:	8b 75 0c             	mov    0xc(%ebp),%esi
4145b7:	8b d9                	mov    %ecx,%ebx
4145b9:	57                   	push   %edi
4145ba:	85 f6                	test   %esi,%esi
4145bc:	74 3b                	je     0x4145f9
4145be:	8b 7d 08             	mov    0x8(%ebp),%edi
4145c1:	33 c0                	xor    %eax,%eax
4145c3:	85 c0                	test   %eax,%eax
4145c5:	78 29                	js     0x4145f0
4145c7:	ff 75 14             	push   0x14(%ebp)
4145ca:	83 64 24 10 00       	andl   $0x0,0x10(%esp)
4145cf:	8d 44 24 10          	lea    0x10(%esp),%eax
4145d3:	ff 75 10             	push   0x10(%ebp)
4145d6:	8b cb                	mov    %ebx,%ecx
4145d8:	50                   	push   %eax
4145d9:	56                   	push   %esi
4145da:	57                   	push   %edi
4145db:	e8 20 00 00 00       	call   0x414600
4145e0:	85 c0                	test   %eax,%eax
4145e2:	78 08                	js     0x4145ec
4145e4:	2b 74 24 0c          	sub    0xc(%esp),%esi
4145e8:	03 7c 24 0c          	add    0xc(%esp),%edi
4145ec:	85 f6                	test   %esi,%esi
4145ee:	75 d3                	jne    0x4145c3
4145f0:	5f                   	pop    %edi
4145f1:	5e                   	pop    %esi
4145f2:	5b                   	pop    %ebx
4145f3:	8b e5                	mov    %ebp,%esp
4145f5:	5d                   	pop    %ebp
4145f6:	c2 10 00             	ret    $0x10
4145f9:	b8 57 00 07 80       	mov    $0x80070057,%eax
4145fe:	eb f0                	jmp    0x4145f0
414600:	8b ff                	mov    %edi,%edi
414602:	55                   	push   %ebp
414603:	8b ec                	mov    %esp,%ebp
414605:	83 ec 20             	sub    $0x20,%esp
414608:	53                   	push   %ebx
414609:	56                   	push   %esi
41460a:	8b f1                	mov    %ecx,%esi
41460c:	8b 4d 14             	mov    0x14(%ebp),%ecx
41460f:	57                   	push   %edi
414610:	85 c9                	test   %ecx,%ecx
414612:	0f 84 0b db 00 00    	je     0x422123
414618:	8b 45 10             	mov    0x10(%ebp),%eax
41461b:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
414622:	85 c0                	test   %eax,%eax
414624:	74 06                	je     0x41462c
414626:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
41462c:	8b 46 28             	mov    0x28(%esi),%eax
41462f:	83 b8 80 00 00 00 00 	cmpl   $0x0,0x80(%eax)
414636:	0f 8d 44 01 00 00    	jge    0x414780
41463c:	66 83 7e 06 00       	cmpw   $0x0,0x6(%esi)
414641:	0f 84 ef 00 00 00    	je     0x414736
414647:	8b 46 28             	mov    0x28(%esi),%eax
41464a:	8b 55 0c             	mov    0xc(%ebp),%edx
41464d:	8b ca                	mov    %edx,%ecx
41464f:	89 4d fc             	mov    %ecx,-0x4(%ebp)
414652:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
414659:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
41465f:	25 ff ff ff 3f       	and    $0x3fffffff,%eax
414664:	89 45 ec             	mov    %eax,-0x14(%ebp)
414667:	85 d2                	test   %edx,%edx
414669:	0f 84 a2 00 00 00    	je     0x414711
41466f:	90                   	nop
414670:	8b 46 28             	mov    0x28(%esi),%eax
414673:	8b 88 88 00 00 00    	mov    0x88(%eax),%ecx
414679:	8b 46 28             	mov    0x28(%esi),%eax
41467c:	89 4d f0             	mov    %ecx,-0x10(%ebp)
41467f:	8b 98 90 00 00 00    	mov    0x90(%eax),%ebx
414685:	8b 56 28             	mov    0x28(%esi),%edx
414688:	8b 82 80 00 00 00    	mov    0x80(%edx),%eax
41468e:	85 c0                	test   %eax,%eax
414690:	0f 89 ea 00 00 00    	jns    0x414780
414696:	8b f9                	mov    %ecx,%edi
414698:	2b fb                	sub    %ebx,%edi
41469a:	3b cb                	cmp    %ebx,%ecx
41469c:	0f 82 8b da 00 00    	jb     0x42212d
4146a2:	85 ff                	test   %edi,%edi
4146a4:	0f 84 ad 00 00 00    	je     0x414757
4146aa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4146ad:	3b c7                	cmp    %edi,%eax
4146af:	0f 82 9b 00 00 00    	jb     0x414750
4146b5:	3b cb                	cmp    %ebx,%ecx
4146b7:	0f 86 99 da 00 00    	jbe    0x422156
4146bd:	8d 82 98 00 00 00    	lea    0x98(%edx),%eax
4146c3:	03 c3                	add    %ebx,%eax
4146c5:	57                   	push   %edi
4146c6:	50                   	push   %eax
4146c7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4146ca:	03 45 08             	add    0x8(%ebp),%eax
4146cd:	50                   	push   %eax
4146ce:	e8 13 68 00 00       	call   0x41aee6
4146d3:	83 c4 0c             	add    $0xc,%esp
4146d6:	03 df                	add    %edi,%ebx
4146d8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4146db:	8b 46 28             	mov    0x28(%esi),%eax
4146de:	29 7d fc             	sub    %edi,-0x4(%ebp)
4146e1:	01 7d f8             	add    %edi,-0x8(%ebp)
4146e4:	89 98 90 00 00 00    	mov    %ebx,0x90(%eax)
4146ea:	8b c3                	mov    %ebx,%eax
4146ec:	2b c1                	sub    %ecx,%eax
4146ee:	3b cb                	cmp    %ebx,%ecx
4146f0:	72 03                	jb     0x4146f5
4146f2:	03 45 ec             	add    -0x14(%ebp),%eax
4146f5:	3b 46 44             	cmp    0x44(%esi),%eax
4146f8:	72 09                	jb     0x414703
4146fa:	ff 76 30             	push   0x30(%esi)
4146fd:	ff 15 b0 a2 43 00    	call   *0x43a2b0
414703:	8b 4d fc             	mov    -0x4(%ebp),%ecx
414706:	85 c9                	test   %ecx,%ecx
414708:	0f 85 62 ff ff ff    	jne    0x414670
41470e:	8b 55 0c             	mov    0xc(%ebp),%edx
414711:	8b 5d e8             	mov    -0x18(%ebp),%ebx
414714:	8b 45 10             	mov    0x10(%ebp),%eax
414717:	85 c0                	test   %eax,%eax
414719:	74 04                	je     0x41471f
41471b:	2b d1                	sub    %ecx,%edx
41471d:	89 10                	mov    %edx,(%eax)
41471f:	8b 46 28             	mov    0x28(%esi),%eax
414722:	83 b8 80 00 00 00 00 	cmpl   $0x0,0x80(%eax)
414729:	7d 55                	jge    0x414780
41472b:	8b c3                	mov    %ebx,%eax
41472d:	5f                   	pop    %edi
41472e:	5e                   	pop    %esi
41472f:	5b                   	pop    %ebx
414730:	8b e5                	mov    %ebp,%esp
414732:	5d                   	pop    %ebp
414733:	c2 14 00             	ret    $0x14
414736:	ff 75 18             	push   0x18(%ebp)
414739:	51                   	push   %ecx
41473a:	8b ce                	mov    %esi,%ecx
41473c:	e8 72 03 00 00       	call   0x414ab3
414741:	8b d8                	mov    %eax,%ebx
414743:	89 5d e8             	mov    %ebx,-0x18(%ebp)
414746:	85 db                	test   %ebx,%ebx
414748:	0f 89 f9 fe ff ff    	jns    0x414647
41474e:	eb dd                	jmp    0x41472d
414750:	8b f8                	mov    %eax,%edi
414752:	e9 5e ff ff ff       	jmp    0x4146b5
414757:	a9 00 00 00 40       	test   $0x40000000,%eax
41475c:	0f 85 d3 d9 00 00    	jne    0x422135
414762:	ff 75 18             	push   0x18(%ebp)
414765:	8b ce                	mov    %esi,%ecx
414767:	ff 75 14             	push   0x14(%ebp)
41476a:	e8 d5 13 00 00       	call   0x415b44
41476f:	8b d8                	mov    %eax,%ebx
414771:	89 5d e8             	mov    %ebx,-0x18(%ebp)
414774:	85 db                	test   %ebx,%ebx
414776:	74 8b                	je     0x414703
414778:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41477b:	8b 55 0c             	mov    0xc(%ebp),%edx
41477e:	eb 94                	jmp    0x414714
414780:	b8 b4 0d 04 80       	mov    $0x80040db4,%eax
414785:	eb a6                	jmp    0x41472d
414787:	8b ff                	mov    %edi,%edi
414789:	55                   	push   %ebp
41478a:	8b ec                	mov    %esp,%ebp
41478c:	83 e4 f8             	and    $0xfffffff8,%esp
41478f:	83 ec 14             	sub    $0x14,%esp
414792:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
414796:	53                   	push   %ebx
414797:	56                   	push   %esi
414798:	57                   	push   %edi
414799:	8b d9                	mov    %ecx,%ebx
41479b:	0f 84 3f da 00 00    	je     0x4221e0
4147a1:	8b 75 0c             	mov    0xc(%ebp),%esi
4147a4:	83 fe 32             	cmp    $0x32,%esi
4147a7:	0f 82 3d da 00 00    	jb     0x4221ea
4147ad:	8b 43 28             	mov    0x28(%ebx),%eax
4147b0:	33 c9                	xor    %ecx,%ecx
4147b2:	8b f9                	mov    %ecx,%edi
4147b4:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
4147ba:	89 44 24 18          	mov    %eax,0x18(%esp)
4147be:	8b 43 28             	mov    0x28(%ebx),%eax
4147c1:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
4147c7:	89 44 24 14          	mov    %eax,0x14(%esp)
4147cb:	66 39 4b 06          	cmp    %cx,0x6(%ebx)
4147cf:	0f 85 f1 00 00 00    	jne    0x4148c6
4147d5:	66 39 4b 04          	cmp    %cx,0x4(%ebx)
4147d9:	0f 84 c8 00 00 00    	je     0x4148a7
4147df:	8b 4b 28             	mov    0x28(%ebx),%ecx
4147e2:	ba 00 00 00 40       	mov    $0x40000000,%edx
4147e7:	83 e9 80             	sub    $0xffffff80,%ecx
4147ea:	e8 40 07 00 00       	call   0x414f2f
4147ef:	ff 73 2c             	push   0x2c(%ebx)
4147f2:	ff 15 b0 a2 43 00    	call   *0x43a2b0
4147f8:	ff 73 34             	push   0x34(%ebx)
4147fb:	f7 d8                	neg    %eax
4147fd:	8b cb                	mov    %ebx,%ecx
4147ff:	1b ff                	sbb    %edi,%edi
414801:	81 e7 fb bf ff 7f    	and    $0x7fffbffb,%edi
414807:	81 c7 05 40 00 80    	add    $0x80004005,%edi
41480d:	e8 e0 06 00 00       	call   0x414ef2
414812:	83 64 24 10 00       	andl   $0x0,0x10(%esp)
414817:	8b c8                	mov    %eax,%ecx
414819:	33 c0                	xor    %eax,%eax
41481b:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
41481f:	89 44 24 0c          	mov    %eax,0xc(%esp)
414823:	8b 44 24 14          	mov    0x14(%esp),%eax
414827:	39 44 24 18          	cmp    %eax,0x18(%esp)
41482b:	74 5f                	je     0x41488c
41482d:	8b 43 28             	mov    0x28(%ebx),%eax
414830:	83 b8 80 00 00 00 00 	cmpl   $0x0,0x80(%eax)
414837:	0f 8d 82 00 00 00    	jge    0x4148bf
41483d:	6a 32                	push   $0x32
41483f:	8d 53 14             	lea    0x14(%ebx),%edx
414842:	e8 39 03 00 00       	call   0x414b80
414847:	3d 02 01 00 00       	cmp    $0x102,%eax
41484c:	75 64                	jne    0x4148b2
41484e:	8b 44 24 10          	mov    0x10(%esp),%eax
414852:	8b 54 24 0c          	mov    0xc(%esp),%edx
414856:	83 c0 32             	add    $0x32,%eax
414859:	83 c2 32             	add    $0x32,%edx
41485c:	89 44 24 10          	mov    %eax,0x10(%esp)
414860:	83 7b 48 ff          	cmpl   $0xffffffff,0x48(%ebx)
414864:	89 54 24 0c          	mov    %edx,0xc(%esp)
414868:	0f 85 87 d9 00 00    	jne    0x4221f5
41486e:	3b d6                	cmp    %esi,%edx
414870:	0f 83 92 d9 00 00    	jae    0x422208
414876:	8b 43 28             	mov    0x28(%ebx),%eax
414879:	8b 88 88 00 00 00    	mov    0x88(%eax),%ecx
41487f:	8b 43 28             	mov    0x28(%ebx),%eax
414882:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
414888:	3b c8                	cmp    %eax,%ecx
41488a:	75 3e                	jne    0x4148ca
41488c:	6a 00                	push   $0x0
41488e:	6a 01                	push   $0x1
414890:	ff 73 38             	push   0x38(%ebx)
414893:	ff 15 a4 a2 43 00    	call   *0x43a2a4
414899:	85 c0                	test   %eax,%eax
41489b:	0f 84 a4 d9 00 00    	je     0x422245
4148a1:	33 c0                	xor    %eax,%eax
4148a3:	66 89 43 04          	mov    %ax,0x4(%ebx)
4148a7:	8b c7                	mov    %edi,%eax
4148a9:	5f                   	pop    %edi
4148aa:	5e                   	pop    %esi
4148ab:	5b                   	pop    %ebx
4148ac:	8b e5                	mov    %ebp,%esp
4148ae:	5d                   	pop    %ebp
4148af:	c2 08 00             	ret    $0x8
4148b2:	83 f8 ff             	cmp    $0xffffffff,%eax
4148b5:	0f 84 6f d9 00 00    	je     0x42222a
4148bb:	85 c0                	test   %eax,%eax
4148bd:	74 8f                	je     0x41484e
4148bf:	b8 b4 0d 04 80       	mov    $0x80040db4,%eax
4148c4:	eb e3                	jmp    0x4148a9
4148c6:	33 c0                	xor    %eax,%eax
4148c8:	eb df                	jmp    0x4148a9
4148ca:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
4148ce:	e9 5a ff ff ff       	jmp    0x41482d
4148d3:	8b ff                	mov    %edi,%edi
4148d5:	55                   	push   %ebp
4148d6:	8b ec                	mov    %esp,%ebp
4148d8:	53                   	push   %ebx
4148d9:	56                   	push   %esi
4148da:	57                   	push   %edi
4148db:	8b 7d 08             	mov    0x8(%ebp),%edi
4148de:	8b d9                	mov    %ecx,%ebx
4148e0:	85 ff                	test   %edi,%edi
4148e2:	74 17                	je     0x4148fb
4148e4:	8b 07                	mov    (%edi),%eax
4148e6:	57                   	push   %edi
4148e7:	8b 70 04             	mov    0x4(%eax),%esi
4148ea:	81 fe d0 c5 40 00    	cmp    $0x40c5d0,%esi
4148f0:	0f 85 83 d9 00 00    	jne    0x422279
4148f6:	e8 d5 7c ff ff       	call   0x40c5d0
4148fb:	8b 03                	mov    (%ebx),%eax
4148fd:	85 c0                	test   %eax,%eax
4148ff:	0f 85 83 d9 00 00    	jne    0x422288
414905:	89 3b                	mov    %edi,(%ebx)
414907:	8b c7                	mov    %edi,%eax
414909:	5f                   	pop    %edi
41490a:	5e                   	pop    %esi
41490b:	5b                   	pop    %ebx
41490c:	5d                   	pop    %ebp