43866d:	8b f8                	mov    %eax,%edi
43866f:	89 7d e8             	mov    %edi,-0x18(%ebp)
438672:	3b 7d ec             	cmp    -0x14(%ebp),%edi
438675:	0f 84 07 01 00 00    	je     0x438782
43867b:	8b 45 08             	mov    0x8(%ebp),%eax
43867e:	8b 40 f0             	mov    -0x10(%eax),%eax
438681:	8b 40 30             	mov    0x30(%eax),%eax
438684:	85 c0                	test   %eax,%eax
438686:	74 1c                	je     0x4386a4
438688:	8b 55 08             	mov    0x8(%ebp),%edx
43868b:	8b f0                	mov    %eax,%esi
43868d:	eb 02                	jmp    0x438691
43868f:	8b f0                	mov    %eax,%esi
438691:	8b 46 30             	mov    0x30(%esi),%eax
438694:	85 c0                	test   %eax,%eax
438696:	75 f7                	jne    0x43868f
438698:	8b c6                	mov    %esi,%eax
43869a:	e8 bd 8d 00 00       	call   0x44145c
43869f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4386a2:	eb 2a                	jmp    0x4386ce
4386a4:	8b 45 08             	mov    0x8(%ebp),%eax
4386a7:	8b 40 f0             	mov    -0x10(%eax),%eax
4386aa:	8b 15 28 6d 43 00    	mov    0x436d28,%edx
4386b0:	e8 43 ad fc ff       	call   0x4033f8
4386b5:	84 c0                	test   %al,%al
4386b7:	74 10                	je     0x4386c9
4386b9:	8b 45 08             	mov    0x8(%ebp),%eax
4386bc:	8b 40 f0             	mov    -0x10(%eax),%eax
4386bf:	e8 98 8d 00 00       	call   0x44145c
4386c4:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4386c7:	eb 05                	jmp    0x4386ce
4386c9:	33 c0                	xor    %eax,%eax
4386cb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4386ce:	c6 45 f8 00          	movb   $0x0,-0x8(%ebp)
4386d2:	8b 45 08             	mov    0x8(%ebp),%eax
4386d5:	8b 50 f7             	mov    -0x9(%eax),%edx
4386d8:	89 55 f0             	mov    %edx,-0x10(%ebp)
4386db:	8b 50 fb             	mov    -0x5(%eax),%edx
4386de:	89 55 f4             	mov    %edx,-0xc(%ebp)
4386e1:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4386e4:	50                   	push   %eax
4386e5:	68 88 85 43 00       	push   $0x438588
4386ea:	e8 69 d9 fc ff       	call   0x406058
4386ef:	50                   	push   %eax
4386f0:	e8 43 de fc ff       	call   0x406538
4386f5:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
4386f9:	0f 84 83 00 00 00    	je     0x438782
4386ff:	8d 45 d4             	lea    -0x2c(%ebp),%eax
438702:	50                   	push   %eax
438703:	8b 45 ec             	mov    -0x14(%ebp),%eax
438706:	50                   	push   %eax
438707:	e8 b4 df fc ff       	call   0x4066c0
43870c:	8b 45 08             	mov    0x8(%ebp),%eax
43870f:	83 c0 f7             	add    $0xfffffff7,%eax
438712:	50                   	push   %eax
438713:	8b 45 08             	mov    0x8(%ebp),%eax
438716:	48                   	dec    %eax
438717:	50                   	push   %eax
438718:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
43871b:	8b 45 08             	mov    0x8(%ebp),%eax
43871e:	8b 50 f0             	mov    -0x10(%eax),%edx
438721:	8b c3                	mov    %ebx,%eax
438723:	66 be bd ff          	mov    $0xffbd,%si
438727:	e8 3c ad fc ff       	call   0x403468
43872c:	a1 38 9b 46 00       	mov    0x469b38,%eax
438731:	8b 15 a8 59 43 00    	mov    0x4359a8,%edx
438737:	e8 bc ac fc ff       	call   0x4033f8
43873c:	84 c0                	test   %al,%al
43873e:	74 29                	je     0x438769
438740:	a1 38 9b 46 00       	mov    0x469b38,%eax
438745:	8b 40 38             	mov    0x38(%eax),%eax
438748:	83 b8 a0 00 00 00 00 	cmpl   $0x0,0xa0(%eax)
43874f:	74 18                	je     0x438769
438751:	a1 38 9b 46 00       	mov    0x469b38,%eax
438756:	8b 40 38             	mov    0x38(%eax),%eax
438759:	8b 80 a0 00 00 00    	mov    0xa0(%eax),%eax
43875f:	e8 f8 8c 00 00       	call   0x44145c
438764:	3b 45 ec             	cmp    -0x14(%ebp),%eax
438767:	74 19                	je     0x438782
438769:	8d 45 c4             	lea    -0x3c(%ebp),%eax
43876c:	50                   	push   %eax
43876d:	8d 45 d4             	lea    -0x2c(%ebp),%eax
438770:	50                   	push   %eax
438771:	8d 45 d4             	lea    -0x2c(%ebp),%eax
438774:	50                   	push   %eax
438775:	e8 7e df fc ff       	call   0x4066f8
43877a:	85 c0                	test   %eax,%eax
43877c:	74 04                	je     0x438782
43877e:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
438782:	8a 45 ff             	mov    -0x1(%ebp),%al
438785:	5f                   	pop    %edi
438786:	5e                   	pop    %esi
438787:	5b                   	pop    %ebx
438788:	8b e5                	mov    %ebp,%esp
43878a:	5d                   	pop    %ebp
43878b:	c3                   	ret
43878c:	55                   	push   %ebp
43878d:	8b ec                	mov    %esp,%ebp
43878f:	8b 45 08             	mov    0x8(%ebp),%eax
438792:	8b 40 f0             	mov    -0x10(%eax),%eax
438795:	8b 15 28 6d 43 00    	mov    0x436d28,%edx
43879b:	e8 58 ac fc ff       	call   0x4033f8
4387a0:	84 c0                	test   %al,%al
4387a2:	74 25                	je     0x4387c9
4387a4:	8b 45 08             	mov    0x8(%ebp),%eax
4387a7:	8b 40 ec             	mov    -0x14(%eax),%eax
4387aa:	e8 ad 8c 00 00       	call   0x44145c
4387af:	50                   	push   %eax
4387b0:	8b 45 08             	mov    0x8(%ebp),%eax
4387b3:	8b 40 f0             	mov    -0x10(%eax),%eax
4387b6:	e8 a1 8c 00 00       	call   0x44145c
4387bb:	50                   	push   %eax
4387bc:	e8 47 df fc ff       	call   0x406708
4387c1:	83 f8 01             	cmp    $0x1,%eax
4387c4:	1b c0                	sbb    %eax,%eax
4387c6:	40                   	inc    %eax
4387c7:	5d                   	pop    %ebp
4387c8:	c3                   	ret
4387c9:	33 c0                	xor    %eax,%eax
4387cb:	5d                   	pop    %ebp
4387cc:	c3                   	ret
4387cd:	8d 40 00             	lea    0x0(%eax),%eax
4387d0:	55                   	push   %ebp
4387d1:	8b ec                	mov    %esp,%ebp
4387d3:	83 c4 d8             	add    $0xffffffd8,%esp
4387d6:	53                   	push   %ebx
4387d7:	56                   	push   %esi
4387d8:	57                   	push   %edi
4387d9:	8b f0                	mov    %eax,%esi
4387db:	8d 7d f7             	lea    -0x9(%ebp),%edi
4387de:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4387df:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4387e0:	89 55 f0             	mov    %edx,-0x10(%ebp)
4387e3:	33 c0                	xor    %eax,%eax
4387e5:	89 45 e8             	mov    %eax,-0x18(%ebp)
4387e8:	83 3d 5c 9b 46 00 00 	cmpl   $0x0,0x469b5c
4387ef:	0f 84 2a 01 00 00    	je     0x43891f
4387f5:	6a 11                	push   $0x11
4387f7:	e8 ec dd fc ff       	call   0x4065e8
4387fc:	66 a9 00 80          	test   $0x8000,%ax
438800:	0f 95 c0             	setne  %al
438803:	8b 15 0c 7f 46 00    	mov    0x467f0c,%edx
438809:	8b 12                	mov    (%edx),%edx
43880b:	32 82 b4 00 00 00    	xor    0xb4(%edx),%al
438811:	0f 84 08 01 00 00    	je     0x43891f
438817:	a1 60 9b 46 00       	mov    0x469b60,%eax
43881c:	8b 10                	mov    (%eax),%edx
43881e:	ff 52 08             	call   *0x8(%edx)
438821:	a1 5c 9b 46 00       	mov    0x469b5c,%eax
438826:	8b 58 08             	mov    0x8(%eax),%ebx
438829:	4b                   	dec    %ebx
43882a:	85 db                	test   %ebx,%ebx
43882c:	0f 8c bc 00 00 00    	jl     0x4388ee
438832:	43                   	inc    %ebx
438833:	33 ff                	xor    %edi,%edi
438835:	8b d7                	mov    %edi,%edx
438837:	a1 5c 9b 46 00       	mov    0x469b5c,%eax
43883c:	e8 4b b5 fd ff       	call   0x413d8c
438841:	89 45 ec             	mov    %eax,-0x14(%ebp)
438844:	8b 45 ec             	mov    -0x14(%ebp),%eax
438847:	3b 45 f0             	cmp    -0x10(%ebp),%eax
43884a:	0f 84 96 00 00 00    	je     0x4388e6
438850:	8b 45 ec             	mov    -0x14(%ebp),%eax
438853:	80 b8 a6 01 00 00 00 	cmpb   $0x0,0x1a6(%eax)
43885a:	0f 84 86 00 00 00    	je     0x4388e6
438860:	8b 45 ec             	mov    -0x14(%ebp),%eax
438863:	8b 10                	mov    (%eax),%edx
438865:	ff 52 50             	call   *0x50(%edx)
438868:	84 c0                	test   %al,%al
43886a:	74 7a                	je     0x4388e6
43886c:	8b 45 ec             	mov    -0x14(%ebp),%eax
43886f:	e8 e8 8b 00 00       	call   0x44145c
438874:	50                   	push   %eax
438875:	e8 be de fc ff       	call   0x406738
43887a:	85 c0                	test   %eax,%eax
43887c:	74 68                	je     0x4388e6
43887e:	55                   	push   %ebp
43887f:	e8 08 ff ff ff       	call   0x43878c
438884:	59                   	pop    %ecx
438885:	84 c0                	test   %al,%al
438887:	75 5d                	jne    0x4388e6
438889:	8b 45 f0             	mov    -0x10(%ebp),%eax
43888c:	8b 80 a0 00 00 00    	mov    0xa0(%eax),%eax
438892:	3b 45 ec             	cmp    -0x14(%ebp),%eax
438895:	75 0b                	jne    0x4388a2
438897:	8b 45 ec             	mov    -0x14(%ebp),%eax
43889a:	e8 ed 76 00 00       	call   0x43ff8c
43889f:	48                   	dec    %eax
4388a0:	7e 44                	jle    0x4388e6
4388a2:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
4388a6:	8d 45 f7             	lea    -0x9(%ebp),%eax
4388a9:	50                   	push   %eax
4388aa:	8d 45 ff             	lea    -0x1(%ebp),%eax
4388ad:	50                   	push   %eax
4388ae:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4388b1:	8b 55 f0             	mov    -0x10(%ebp),%edx
4388b4:	8b 45 ec             	mov    -0x14(%ebp),%eax
4388b7:	66 be bd ff          	mov    $0xffbd,%si
4388bb:	e8 a8 ab fc ff       	call   0x403468
4388c0:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
4388c4:	74 20                	je     0x4388e6
4388c6:	ff 75 fb             	push   -0x5(%ebp)
4388c9:	ff 75 f7             	push   -0x9(%ebp)
4388cc:	8d 45 d8             	lea    -0x28(%ebp),%eax
4388cf:	50                   	push   %eax
4388d0:	e8 e3 de fc ff       	call   0x4067b8
4388d5:	85 c0                	test   %eax,%eax
4388d7:	74 0d                	je     0x4388e6
4388d9:	8b 55 ec             	mov    -0x14(%ebp),%edx
4388dc:	a1 60 9b 46 00       	mov    0x469b60,%eax
4388e1:	e8 72 f6 ff ff       	call   0x437f58
4388e6:	47                   	inc    %edi
4388e7:	4b                   	dec    %ebx
4388e8:	0f 85 47 ff ff ff    	jne    0x438835
4388ee:	a1 60 9b 46 00       	mov    0x469b60,%eax
4388f3:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4388f7:	7e 0d                	jle    0x438906
4388f9:	a1 60 9b 46 00       	mov    0x469b60,%eax
4388fe:	e8 e5 f6 ff ff       	call   0x437fe8
438903:	89 45 e8             	mov    %eax,-0x18(%ebp)
438906:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
43890a:	74 13                	je     0x43891f
43890c:	55                   	push   %ebp
43890d:	8b 45 e8             	mov    -0x18(%ebp),%eax
438910:	e8 df fc ff ff       	call   0x4385f4
438915:	59                   	pop    %ecx
438916:	84 c0                	test   %al,%al
438918:	75 05                	jne    0x43891f
43891a:	33 c0                	xor    %eax,%eax
43891c:	89 45 e8             	mov    %eax,-0x18(%ebp)
43891f:	8b 45 e8             	mov    -0x18(%ebp),%eax
438922:	5f                   	pop    %edi
438923:	5e                   	pop    %esi
438924:	5b                   	pop    %ebx
438925:	8b e5                	mov    %ebp,%esp
438927:	5d                   	pop    %ebp
438928:	c3                   	ret
438929:	8d 40 00             	lea    0x0(%eax),%eax
43892c:	53                   	push   %ebx
43892d:	56                   	push   %esi
43892e:	57                   	push   %edi
43892f:	8b da                	mov    %edx,%ebx
438931:	8b f0                	mov    %eax,%esi
438933:	85 f6                	test   %esi,%esi
438935:	74 4e                	je     0x438985
438937:	83 3d 5c 9b 46 00 00 	cmpl   $0x0,0x469b5c
43893e:	75 11                	jne    0x438951
438940:	b2 01                	mov    $0x1,%dl
438942:	a1 24 1a 41 00       	mov    0x411a24,%eax
438947:	e8 f0 a8 fc ff       	call   0x40323c
43894c:	a3 5c 9b 46 00       	mov    %eax,0x469b5c
438951:	8b fe                	mov    %esi,%edi
438953:	8b d7                	mov    %edi,%edx
438955:	a1 5c 9b 46 00       	mov    0x469b5c,%eax
43895a:	e8 89 b4 fd ff       	call   0x413de8
43895f:	84 db                	test   %bl,%bl
438961:	74 11                	je     0x438974
438963:	40                   	inc    %eax
438964:	75 1f                	jne    0x438985
438966:	8b d7                	mov    %edi,%edx
438968:	a1 5c 9b 46 00       	mov    0x469b5c,%eax
43896d:	e8 be b2 fd ff       	call   0x413c30
438972:	eb 11                	jmp    0x438985
438974:	83 f8 ff             	cmp    $0xffffffff,%eax
438977:	74 0c                	je     0x438985
438979:	8b d0                	mov    %eax,%edx
43897b:	a1 5c 9b 46 00       	mov    0x469b5c,%eax
438980:	e8 f7 b2 fd ff       	call   0x413c7c
438985:	5f                   	pop    %edi
438986:	5e                   	pop    %esi
438987:	5b                   	pop    %ebx
438988:	c3                   	ret
438989:	8d 40 00             	lea    0x0(%eax),%eax
43898c:	55                   	push   %ebp
43898d:	8b ec                	mov    %esp,%ebp
43898f:	83 c4 e8             	add    $0xffffffe8,%esp
438992:	53                   	push   %ebx
438993:	89 4d fc             	mov    %ecx,-0x4(%ebp)
438996:	33 c9                	xor    %ecx,%ecx
438998:	85 c0                	test   %eax,%eax
43899a:	74 3c                	je     0x4389d8
43899c:	8b 4d 08             	mov    0x8(%ebp),%ecx
43899f:	8b 19                	mov    (%ecx),%ebx
4389a1:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4389a4:	8b 59 04             	mov    0x4(%ecx),%ebx
4389a7:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4389aa:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4389ad:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4389b0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4389b3:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4389b6:	80 3d 54 9b 46 00 02 	cmpb   $0x2,0x469b54
4389bd:	0f 94 c1             	sete   %cl
4389c0:	88 4d f8             	mov    %cl,-0x8(%ebp)
4389c3:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4389c6:	51                   	push   %ecx
4389c7:	83 e2 7f             	and    $0x7f,%edx
4389ca:	52                   	push   %edx
4389cb:	68 2f b0 00 00       	push   $0xb02f
4389d0:	50                   	push   %eax
4389d1:	e8 3a de fc ff       	call   0x406810
4389d6:	8b c8                	mov    %eax,%ecx
4389d8:	8b c1                	mov    %ecx,%eax
4389da:	5b                   	pop    %ebx
4389db:	8b e5                	mov    %ebp,%esp
4389dd:	5d                   	pop    %ebp
4389de:	c2 08 00             	ret    $0x8
4389e1:	8d 40 00             	lea    0x0(%eax),%eax
4389e4:	53                   	push   %ebx
4389e5:	56                   	push   %esi
4389e6:	51                   	push   %ecx
4389e7:	8b f0                	mov    %eax,%esi
4389e9:	33 db                	xor    %ebx,%ebx
4389eb:	85 f6                	test   %esi,%esi
4389ed:	74 4f                	je     0x438a3e
4389ef:	54                   	push   %esp
4389f0:	56                   	push   %esi
4389f1:	e8 e2 dc fc ff       	call   0x4066d8
4389f6:	85 c0                	test   %eax,%eax
4389f8:	74 44                	je     0x438a3e
4389fa:	e8 51 d6 fc ff       	call   0x406050
4389ff:	3b 04 24             	cmp    (%esp),%eax
438a02:	75 3a                	jne    0x438a3e
438a04:	a1 28 9b 46 00       	mov    0x469b28,%eax
438a09:	e8 6e ba fc ff       	call   0x40447c
438a0e:	50                   	push   %eax
438a0f:	e8 fc d6 fc ff       	call   0x406110
438a14:	66 3b 05 24 9b 46 00 	cmp    0x469b24,%ax
438a1b:	75 15                	jne    0x438a32
438a1d:	0f b7 05 24 9b 46 00 	movzwl 0x469b24,%eax
438a24:	50                   	push   %eax
438a25:	56                   	push   %esi
438a26:	e8 25 dc fc ff       	call   0x406650
438a2b:	85 c0                	test   %eax,%eax
438a2d:	0f 95 c3             	setne  %bl
438a30:	eb 0c                	jmp    0x438a3e
438a32:	8b c6                	mov    %esi,%eax
438a34:	e8 9f f0 ff ff       	call   0x437ad8
438a39:	85 c0                	test   %eax,%eax
438a3b:	0f 95 c3             	setne  %bl
438a3e:	8b c3                	mov    %ebx,%eax
438a40:	5a                   	pop    %edx
438a41:	5e                   	pop    %esi
438a42:	5b                   	pop    %ebx
438a43:	c3                   	ret
438a44:	53                   	push   %ebx
438a45:	ff 70 04             	push   0x4(%eax)
438a48:	ff 30                	push   (%eax)
438a4a:	e8 c9 de fc ff       	call   0x406918
438a4f:	8b d8                	mov    %eax,%ebx
438a51:	85 db                	test   %ebx,%ebx