420847:	33 c0                	xor    %eax,%eax
420849:	6a 01                	push   $0x1
42084b:	8a 65 08             	mov    0x8(%ebp),%ah
42084e:	ff 75 0c             	push   0xc(%ebp)
420851:	0f b7 c0             	movzwl %ax,%eax
420854:	0c ff                	or     $0xff,%al
420856:	8b cf                	mov    %edi,%ecx
420858:	50                   	push   %eax
420859:	ff 96 c4 00 00 00    	call   *0xc4(%esi)
42085f:	5f                   	pop    %edi
420860:	5e                   	pop    %esi
420861:	5d                   	pop    %ebp
420862:	c2 0c 00             	ret    $0xc
420865:	55                   	push   %ebp
420866:	8b ec                	mov    %esp,%ebp
420868:	f6 45 08 0c          	testb  $0xc,0x8(%ebp)
42086c:	56                   	push   %esi
42086d:	8b f1                	mov    %ecx,%esi
42086f:	75 0c                	jne    0x42087d
420871:	6a 01                	push   $0x1
420873:	56                   	push   %esi
420874:	e8 64 02 00 00       	call   0x420add
420879:	85 c0                	test   %eax,%eax
42087b:	74 04                	je     0x420881
42087d:	33 c0                	xor    %eax,%eax
42087f:	eb 13                	jmp    0x420894
420881:	ff 75 14             	push   0x14(%ebp)
420884:	8b ce                	mov    %esi,%ecx
420886:	ff 75 10             	push   0x10(%ebp)
420889:	ff 75 0c             	push   0xc(%ebp)
42088c:	ff 75 08             	push   0x8(%ebp)
42088f:	e8 05 00 00 00       	call   0x420899
420894:	5e                   	pop    %esi
420895:	5d                   	pop    %ebp
420896:	c2 10 00             	ret    $0x10
420899:	55                   	push   %ebp
42089a:	8b ec                	mov    %esp,%ebp
42089c:	83 ec 0c             	sub    $0xc,%esp
42089f:	53                   	push   %ebx
4208a0:	56                   	push   %esi
4208a1:	57                   	push   %edi
4208a2:	8b f1                	mov    %ecx,%esi
4208a4:	e8 2f ce ff ff       	call   0x41d6d8
4208a9:	8b 3e                	mov    (%esi),%edi
4208ab:	6a 01                	push   $0x1
4208ad:	8b ce                	mov    %esi,%ecx
4208af:	89 45 f8             	mov    %eax,-0x8(%ebp)
4208b2:	8b 5f 70             	mov    0x70(%edi),%ebx
4208b5:	ff d3                	call   *%ebx
4208b7:	85 c0                	test   %eax,%eax
4208b9:	74 0b                	je     0x4208c6
4208bb:	8b c8                	mov    %eax,%ecx
4208bd:	e8 4f cf ff ff       	call   0x41d811
4208c2:	85 c0                	test   %eax,%eax
4208c4:	75 0c                	jne    0x4208d2
4208c6:	f6 45 fa 20          	testb  $0x20,-0x6(%ebp)
4208ca:	75 06                	jne    0x4208d2
4208cc:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4208d0:	eb 07                	jmp    0x4208d9
4208d2:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4208d9:	6a 00                	push   $0x0
4208db:	8b ce                	mov    %esi,%ecx
4208dd:	ff d3                	call   *%ebx
4208df:	33 db                	xor    %ebx,%ebx
4208e1:	3b c3                	cmp    %ebx,%eax
4208e3:	74 0b                	je     0x4208f0
4208e5:	8b c8                	mov    %eax,%ecx
4208e7:	e8 25 cf ff ff       	call   0x41d811
4208ec:	85 c0                	test   %eax,%eax
4208ee:	75 09                	jne    0x4208f9
4208f0:	f6 45 fa 10          	testb  $0x10,-0x6(%ebp)
4208f4:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4208f7:	74 07                	je     0x420900
4208f9:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
420900:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
420903:	75 0c                	jne    0x420911
420905:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
420908:	75 07                	jne    0x420911
42090a:	33 c0                	xor    %eax,%eax
42090c:	e9 a5 00 00 00       	jmp    0x4209b6
420911:	6a 00                	push   $0x0
420913:	e8 cc f8 ff ff       	call   0x4201e4
420918:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
42091c:	59                   	pop    %ecx
42091d:	89 45 f4             	mov    %eax,-0xc(%ebp)
420920:	74 40                	je     0x420962
420922:	6a 78                	push   $0x78
420924:	50                   	push   %eax
420925:	0f bf 45 0c          	movswl 0xc(%ebp),%eax
420929:	f7 d8                	neg    %eax
42092b:	50                   	push   %eax
42092c:	ff 15 14 97 43 00    	call   *0x439714
420932:	83 f8 ff             	cmp    $0xffffffff,%eax
420935:	74 17                	je     0x42094e
420937:	83 7d f4 ff          	cmpl   $0xffffffff,-0xc(%ebp)
42093b:	74 11                	je     0x42094e
42093d:	8b 4e 60             	mov    0x60(%esi),%ecx
420940:	0f af c8             	imul   %eax,%ecx
420943:	8b 46 58             	mov    0x58(%esi),%eax
420946:	3b c8                	cmp    %eax,%ecx
420948:	7c 10                	jl     0x42095a
42094a:	8b c8                	mov    %eax,%ecx
42094c:	eb 0c                	jmp    0x42095a
42094e:	66 83 7d 0c 00       	cmpw   $0x0,0xc(%ebp)
420953:	8b 4e 58             	mov    0x58(%esi),%ecx
420956:	7e 02                	jle    0x42095a
420958:	f7 d9                	neg    %ecx
42095a:	33 c0                	xor    %eax,%eax
42095c:	6a 01                	push   $0x1
42095e:	51                   	push   %ecx
42095f:	50                   	push   %eax
420960:	eb 3b                	jmp    0x42099d
420962:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
420966:	74 3f                	je     0x4209a7
420968:	6a 78                	push   $0x78
42096a:	50                   	push   %eax
42096b:	0f bf 45 0c          	movswl 0xc(%ebp),%eax
42096f:	f7 d8                	neg    %eax
420971:	50                   	push   %eax
420972:	ff 15 14 97 43 00    	call   *0x439714
420978:	83 f8 ff             	cmp    $0xffffffff,%eax
42097b:	74 17                	je     0x420994
42097d:	83 7d f4 ff          	cmpl   $0xffffffff,-0xc(%ebp)
420981:	74 11                	je     0x420994
420983:	8b 4e 5c             	mov    0x5c(%esi),%ecx
420986:	0f af c8             	imul   %eax,%ecx
420989:	8b 46 54             	mov    0x54(%esi),%eax
42098c:	3b c8                	cmp    %eax,%ecx
42098e:	7c 07                	jl     0x420997
420990:	8b c8                	mov    %eax,%ecx
420992:	eb 03                	jmp    0x420997
420994:	8b 4e 54             	mov    0x54(%esi),%ecx
420997:	33 c0                	xor    %eax,%eax
420999:	6a 01                	push   $0x1
42099b:	50                   	push   %eax
42099c:	51                   	push   %ecx
42099d:	8b ce                	mov    %esi,%ecx
42099f:	ff 97 c8 00 00 00    	call   *0xc8(%edi)
4209a5:	8b d8                	mov    %eax,%ebx
4209a7:	85 db                	test   %ebx,%ebx
4209a9:	74 09                	je     0x4209b4
4209ab:	ff 76 1c             	push   0x1c(%esi)
4209ae:	ff 15 3c 99 43 00    	call   *0x43993c
4209b4:	8b c3                	mov    %ebx,%eax
4209b6:	5f                   	pop    %edi
4209b7:	5e                   	pop    %esi
4209b8:	5b                   	pop    %ebx
4209b9:	c9                   	leave
4209ba:	c2 10 00             	ret    $0x10
4209bd:	56                   	push   %esi
4209be:	8b f1                	mov    %ecx,%esi
4209c0:	e8 50 98 ff ff       	call   0x41a215
4209c5:	83 f8 ff             	cmp    $0xffffffff,%eax
4209c8:	75 04                	jne    0x4209ce
4209ca:	0b c0                	or     %eax,%eax
4209cc:	eb 1b                	jmp    0x4209e9
4209ce:	8b 44 24 08          	mov    0x8(%esp),%eax
4209d2:	8b 00                	mov    (%eax),%eax
4209d4:	85 c0                	test   %eax,%eax
4209d6:	74 0f                	je     0x4209e7
4209d8:	8b 40 04             	mov    0x4(%eax),%eax
4209db:	85 c0                	test   %eax,%eax
4209dd:	74 08                	je     0x4209e7
4209df:	56                   	push   %esi
4209e0:	8b c8                	mov    %eax,%ecx
4209e2:	e8 35 02 00 00       	call   0x420c1c
4209e7:	33 c0                	xor    %eax,%eax
4209e9:	5e                   	pop    %esi
4209ea:	c2 04 00             	ret    $0x4
4209ed:	56                   	push   %esi
4209ee:	57                   	push   %edi
4209ef:	8b f9                	mov    %ecx,%edi
4209f1:	e8 58 ae ff ff       	call   0x41b84e
4209f6:	8b f0                	mov    %eax,%esi
4209f8:	85 f6                	test   %esi,%esi
4209fa:	74 16                	je     0x420a12
4209fc:	8b ce                	mov    %esi,%ecx
4209fe:	e8 8a 27 00 00       	call   0x42318d
420a03:	3b c7                	cmp    %edi,%eax
420a05:	75 0b                	jne    0x420a12
420a07:	6a 01                	push   $0x1
420a09:	6a 00                	push   $0x0
420a0b:	8b ce                	mov    %esi,%ecx
420a0d:	e8 82 27 00 00       	call   0x423194
420a12:	8b cf                	mov    %edi,%ecx
420a14:	e8 04 a0 ff ff       	call   0x41aa1d
420a19:	5f                   	pop    %edi
420a1a:	5e                   	pop    %esi
420a1b:	c3                   	ret
420a1c:	b8 50 7d 42 00       	mov    $0x427d50,%eax
420a21:	e8 0a b2 fe ff       	call   0x40bc30
420a26:	83 ec 54             	sub    $0x54,%esp
420a29:	56                   	push   %esi
420a2a:	57                   	push   %edi
420a2b:	8b f9                	mov    %ecx,%edi
420a2d:	57                   	push   %edi
420a2e:	8d 4d a0             	lea    -0x60(%ebp),%ecx
420a31:	e8 cf f2 ff ff       	call   0x41fd05
420a36:	8b 37                	mov    (%edi),%esi
420a38:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
420a3c:	8d 45 a0             	lea    -0x60(%ebp),%eax
420a3f:	6a 00                	push   $0x0
420a41:	50                   	push   %eax
420a42:	8b cf                	mov    %edi,%ecx
420a44:	ff 96 e4 00 00 00    	call   *0xe4(%esi)
420a4a:	8d 45 a0             	lea    -0x60(%ebp),%eax
420a4d:	8b cf                	mov    %edi,%ecx
420a4f:	50                   	push   %eax
420a50:	ff 96 f8 00 00 00    	call   *0xf8(%esi)
420a56:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
420a5a:	8d 4d a0             	lea    -0x60(%ebp),%ecx
420a5d:	e8 15 f3 ff ff       	call   0x41fd77
420a62:	8b 4d f4             	mov    -0xc(%ebp),%ecx
420a65:	5f                   	pop    %edi
420a66:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
420a6d:	5e                   	pop    %esi
420a6e:	c9                   	leave
420a6f:	c3                   	ret
420a70:	53                   	push   %ebx
420a71:	55                   	push   %ebp
420a72:	56                   	push   %esi
420a73:	57                   	push   %edi
420a74:	8b f1                	mov    %ecx,%esi
420a76:	e8 9a 97 ff ff       	call   0x41a215
420a7b:	8b e8                	mov    %eax,%ebp
420a7d:	83 fd 03             	cmp    $0x3,%ebp
420a80:	74 52                	je     0x420ad4
420a82:	83 fd 04             	cmp    $0x4,%ebp
420a85:	74 4d                	je     0x420ad4
420a87:	8b ce                	mov    %esi,%ecx
420a89:	e8 c0 ad ff ff       	call   0x41b84e
420a8e:	8b d8                	mov    %eax,%ebx
420a90:	85 db                	test   %ebx,%ebx
420a92:	74 40                	je     0x420ad4
420a94:	8b cb                	mov    %ebx,%ecx
420a96:	e8 f2 26 00 00       	call   0x42318d
420a9b:	8b f8                	mov    %eax,%edi
420a9d:	ff 15 58 98 43 00    	call   *0x439858
420aa3:	3b fe                	cmp    %esi,%edi
420aa5:	75 23                	jne    0x420aca
420aa7:	8b 4e 1c             	mov    0x1c(%esi),%ecx
420aaa:	3b c8                	cmp    %eax,%ecx
420aac:	74 1c                	je     0x420aca
420aae:	50                   	push   %eax
420aaf:	51                   	push   %ecx
420ab0:	ff 15 a4 98 43 00    	call   *0x4398a4
420ab6:	85 c0                	test   %eax,%eax
420ab8:	75 10                	jne    0x420aca
420aba:	8b 06                	mov    (%esi),%eax
420abc:	56                   	push   %esi
420abd:	56                   	push   %esi
420abe:	6a 01                	push   $0x1
420ac0:	8b ce                	mov    %esi,%ecx
420ac2:	ff 90 ec 00 00 00    	call   *0xec(%eax)
420ac8:	eb 0a                	jmp    0x420ad4
420aca:	6a 01                	push   $0x1
420acc:	56                   	push   %esi
420acd:	8b cb                	mov    %ebx,%ecx
420acf:	e8 c0 26 00 00       	call   0x423194
420ad4:	5f                   	pop    %edi
420ad5:	8b c5                	mov    %ebp,%eax
420ad7:	5e                   	pop    %esi
420ad8:	5d                   	pop    %ebp
420ad9:	5b                   	pop    %ebx
420ada:	c2 0c 00             	ret    $0xc
420add:	8b 44 24 04          	mov    0x4(%esp),%eax
420ae1:	53                   	push   %ebx
420ae2:	56                   	push   %esi
420ae3:	57                   	push   %edi
420ae4:	ff 70 1c             	push   0x1c(%eax)
420ae7:	8b 3d a8 98 43 00    	mov    0x4398a8,%edi
420aed:	8d 70 1c             	lea    0x1c(%eax),%esi
420af0:	ff d7                	call   *%edi
420af2:	50                   	push   %eax
420af3:	e8 c8 97 ff ff       	call   0x41a2c0
420af8:	8b d8                	mov    %eax,%ebx
420afa:	68 58 bc 42 00       	push   $0x42bc58
420aff:	8b cb                	mov    %ebx,%ecx
420b01:	e8 48 c2 ff ff       	call   0x41cd4e
420b06:	85 c0                	test   %eax,%eax
420b08:	74 25                	je     0x420b2f
420b0a:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
420b0f:	75 22                	jne    0x420b33
420b11:	ff 36                	push   (%esi)
420b13:	ff d7                	call   *%edi
420b15:	50                   	push   %eax
420b16:	e8 a5 97 ff ff       	call   0x41a2c0
420b1b:	85 c0                	test   %eax,%eax
420b1d:	74 14                	je     0x420b33
420b1f:	ff 70 1c             	push   0x1c(%eax)
420b22:	8d 70 1c             	lea    0x1c(%eax),%esi
420b25:	ff 15 7c 99 43 00    	call   *0x43997c
420b2b:	85 c0                	test   %eax,%eax
420b2d:	74 e2                	je     0x420b11
420b2f:	33 c0                	xor    %eax,%eax
420b31:	eb 02                	jmp    0x420b35
420b33:	8b c3                	mov    %ebx,%eax
420b35:	5f                   	pop    %edi
420b36:	5e                   	pop    %esi
420b37:	5b                   	pop    %ebx
420b38:	c2 08 00             	ret    $0x8
420b3b:	6a 00                	push   $0x0
420b3d:	51                   	push   %ecx
420b3e:	e8 9a ff ff ff       	call   0x420add
420b43:	85 c0                	test   %eax,%eax
420b45:	74 0e                	je     0x420b55
420b47:	83 b8 80 00 00 00 00 	cmpl   $0x0,0x80(%eax)
420b4e:	75 05                	jne    0x420b55
420b50:	6a 01                	push   $0x1
420b52:	58                   	pop    %eax
420b53:	eb 02                	jmp    0x420b57
420b55:	33 c0                	xor    %eax,%eax
420b57:	8b 4c 24 04          	mov    0x4(%esp),%ecx
420b5b:	50                   	push   %eax
420b5c:	8b 11                	mov    (%ecx),%edx
420b5e:	ff 12                	call   *(%edx)
420b60:	c2 04 00             	ret    $0x4
420b63:	6a 00                	push   $0x0
420b65:	51                   	push   %ecx
420b66:	e8 72 ff ff ff       	call   0x420add
420b6b:	85 c0                	test   %eax,%eax
420b6d:	74 0d                	je     0x420b7c
420b6f:	8b 10                	mov    (%eax),%edx
420b71:	8b c8                	mov    %eax,%ecx
420b73:	ff 92 f8 00 00 00    	call   *0xf8(%edx)
420b79:	6a 01                	push   $0x1
420b7b:	58                   	pop    %eax
420b7c:	c2 04 00             	ret    $0x4
420b7f:	56                   	push   %esi
420b80:	6a 00                	push   $0x0
420b82:	51                   	push   %ecx
420b83:	e8 55 ff ff ff       	call   0x420add
420b88:	8b 74 24 08          	mov    0x8(%esp),%esi
420b8c:	85 c0                	test   %eax,%eax
420b8e:	74 20                	je     0x420bb0
420b90:	8b 10                	mov    (%eax),%edx
420b92:	33 c9                	xor    %ecx,%ecx
420b94:	81 7e 04 51 e1 00 00 	cmpl   $0xe151,0x4(%esi)
420b9b:	0f 94 c1             	sete   %cl
420b9e:	51                   	push   %ecx
420b9f:	8b c8                	mov    %eax,%ecx
420ba1:	ff 92 f0 00 00 00    	call   *0xf0(%edx)
420ba7:	85 c0                	test   %eax,%eax
420ba9:	74 05                	je     0x420bb0
420bab:	6a 01                	push   $0x1
420bad:	58                   	pop    %eax
420bae:	eb 02                	jmp    0x420bb2
420bb0:	33 c0                	xor    %eax,%eax
420bb2:	8b 16                	mov    (%esi),%edx
420bb4:	50                   	push   %eax