46a718:	cc                   	int3
46a719:	cc                   	int3
46a71a:	cc                   	int3
46a71b:	cc                   	int3
46a71c:	cc                   	int3
46a71d:	cc                   	int3
46a71e:	cc                   	int3
46a71f:	cc                   	int3
46a720:	33 c0                	xor    %eax,%eax
46a722:	c2 18 00             	ret    $0x18
46a725:	cc                   	int3
46a726:	cc                   	int3
46a727:	cc                   	int3
46a728:	cc                   	int3
46a729:	cc                   	int3
46a72a:	cc                   	int3
46a72b:	cc                   	int3
46a72c:	cc                   	int3
46a72d:	cc                   	int3
46a72e:	cc                   	int3
46a72f:	cc                   	int3
46a730:	6a 7f                	push   $0x7f
46a732:	ff 15 98 72 4a 00    	call   *0x4a7298
46a738:	33 c0                	xor    %eax,%eax
46a73a:	c2 08 00             	ret    $0x8
46a73d:	cc                   	int3
46a73e:	cc                   	int3
46a73f:	cc                   	int3
46a740:	6a 7f                	push   $0x7f
46a742:	ff 15 98 72 4a 00    	call   *0x4a7298
46a748:	33 c0                	xor    %eax,%eax
46a74a:	c2 1c 00             	ret    $0x1c
46a74d:	cc                   	int3
46a74e:	cc                   	int3
46a74f:	cc                   	int3
46a750:	6a 7f                	push   $0x7f
46a752:	ff 15 98 72 4a 00    	call   *0x4a7298
46a758:	33 c0                	xor    %eax,%eax
46a75a:	c2 10 00             	ret    $0x10
46a75d:	cc                   	int3
46a75e:	cc                   	int3
46a75f:	cc                   	int3
46a760:	6a 7f                	push   $0x7f
46a762:	ff 15 98 72 4a 00    	call   *0x4a7298
46a768:	33 c0                	xor    %eax,%eax
46a76a:	33 d2                	xor    %edx,%edx
46a76c:	c3                   	ret
46a76d:	cc                   	int3
46a76e:	cc                   	int3
46a76f:	cc                   	int3
46a770:	83 c8 ff             	or     $0xffffffff,%eax
46a773:	c2 0c 00             	ret    $0xc
46a776:	cc                   	int3
46a777:	cc                   	int3
46a778:	cc                   	int3
46a779:	cc                   	int3
46a77a:	cc                   	int3
46a77b:	cc                   	int3
46a77c:	cc                   	int3
46a77d:	cc                   	int3
46a77e:	cc                   	int3
46a77f:	cc                   	int3
46a780:	6a 7f                	push   $0x7f
46a782:	ff 15 98 72 4a 00    	call   *0x4a7298
46a788:	33 c0                	xor    %eax,%eax
46a78a:	c3                   	ret
46a78b:	cc                   	int3
46a78c:	cc                   	int3
46a78d:	cc                   	int3
46a78e:	cc                   	int3
46a78f:	cc                   	int3
46a790:	6a 7f                	push   $0x7f
46a792:	ff 15 98 72 4a 00    	call   *0x4a7298
46a798:	33 c0                	xor    %eax,%eax
46a79a:	c2 14 00             	ret    $0x14
46a79d:	cc                   	int3
46a79e:	cc                   	int3
46a79f:	cc                   	int3
46a7a0:	33 c0                	xor    %eax,%eax
46a7a2:	c2 0c 00             	ret    $0xc
46a7a5:	a1 c0 65 4a 00       	mov    0x4a65c0,%eax
46a7aa:	85 c0                	test   %eax,%eax
46a7ac:	74 0e                	je     0x46a7bc
46a7ae:	85 c9                	test   %ecx,%ecx
46a7b0:	79 0a                	jns    0x46a7bc
46a7b2:	3b c1                	cmp    %ecx,%eax
46a7b4:	74 05                	je     0x46a7bb
46a7b6:	83 f8 ff             	cmp    $0xffffffff,%eax
46a7b9:	75 01                	jne    0x46a7bc
46a7bb:	cc                   	int3
46a7bc:	c3                   	ret
46a7bd:	8b ff                	mov    %edi,%edi
46a7bf:	56                   	push   %esi
46a7c0:	8b f1                	mov    %ecx,%esi
46a7c2:	83 3e 00             	cmpl   $0x0,(%esi)
46a7c5:	74 0b                	je     0x46a7d2
46a7c7:	ff 36                	push   (%esi)
46a7c9:	ff 15 f0 71 4a 00    	call   *0x4a71f0
46a7cf:	83 26 00             	andl   $0x0,(%esi)
46a7d2:	5e                   	pop    %esi
46a7d3:	c3                   	ret
46a7d4:	8b ff                	mov    %edi,%edi
46a7d6:	56                   	push   %esi
46a7d7:	8b f1                	mov    %ecx,%esi
46a7d9:	83 3e 00             	cmpl   $0x0,(%esi)
46a7dc:	74 14                	je     0x46a7f2
46a7de:	ff 36                	push   (%esi)
46a7e0:	6a 00                	push   $0x0
46a7e2:	ff 15 74 72 4a 00    	call   *0x4a7274
46a7e8:	50                   	push   %eax
46a7e9:	ff 15 94 72 4a 00    	call   *0x4a7294
46a7ef:	83 26 00             	andl   $0x0,(%esi)
46a7f2:	5e                   	pop    %esi
46a7f3:	c3                   	ret
46a7f4:	8b ff                	mov    %edi,%edi
46a7f6:	56                   	push   %esi
46a7f7:	8b f1                	mov    %ecx,%esi
46a7f9:	83 3e 00             	cmpl   $0x0,(%esi)
46a7fc:	74 0b                	je     0x46a809
46a7fe:	ff 36                	push   (%esi)
46a800:	ff 15 88 72 4a 00    	call   *0x4a7288
46a806:	83 26 00             	andl   $0x0,(%esi)
46a809:	5e                   	pop    %esi
46a80a:	c3                   	ret
46a80b:	8b ff                	mov    %edi,%edi
46a80d:	55                   	push   %ebp
46a80e:	8b ec                	mov    %esp,%ebp
46a810:	51                   	push   %ecx
46a811:	56                   	push   %esi
46a812:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
46a817:	b8 70 0e 41 00       	mov    $0x410e70,%eax
46a81c:	57                   	push   %edi
46a81d:	8b ca                	mov    %edx,%ecx
46a81f:	33 ff                	xor    %edi,%edi
46a821:	66 39 38             	cmp    %di,(%eax)
46a824:	74 08                	je     0x46a82e
46a826:	83 c0 02             	add    $0x2,%eax
46a829:	83 e9 01             	sub    $0x1,%ecx
46a82c:	75 f3                	jne    0x46a821
46a82e:	8b 75 08             	mov    0x8(%ebp),%esi
46a831:	8b c1                	mov    %ecx,%eax
46a833:	f7 d8                	neg    %eax
46a835:	1b c0                	sbb    %eax,%eax
46a837:	25 a9 ff f8 7f       	and    $0x7ff8ffa9,%eax
46a83c:	05 57 00 07 80       	add    $0x80070057,%eax
46a841:	85 f6                	test   %esi,%esi
46a843:	74 0c                	je     0x46a851
46a845:	85 c9                	test   %ecx,%ecx
46a847:	74 06                	je     0x46a84f
46a849:	2b d1                	sub    %ecx,%edx
46a84b:	89 16                	mov    %edx,(%esi)
46a84d:	eb 02                	jmp    0x46a851
46a84f:	89 3e                	mov    %edi,(%esi)
46a851:	5f                   	pop    %edi
46a852:	5e                   	pop    %esi
46a853:	c9                   	leave
46a854:	c2 04 00             	ret    $0x4
46a857:	6a 04                	push   $0x4
46a859:	b8 60 53 49 00       	mov    $0x495360,%eax
46a85e:	e8 70 5c 02 00       	call   0x4904d3
46a863:	8b d9                	mov    %ecx,%ebx
46a865:	89 5d f0             	mov    %ebx,-0x10(%ebp)
46a868:	33 c0                	xor    %eax,%eax
46a86a:	89 43 04             	mov    %eax,0x4(%ebx)
46a86d:	89 43 08             	mov    %eax,0x8(%ebx)
46a870:	89 43 0c             	mov    %eax,0xc(%ebx)
46a873:	89 45 fc             	mov    %eax,-0x4(%ebp)
46a876:	89 43 14             	mov    %eax,0x14(%ebx)
46a879:	89 43 18             	mov    %eax,0x18(%ebx)
46a87c:	89 43 1c             	mov    %eax,0x1c(%ebx)
46a87f:	8b 75 08             	mov    0x8(%ebp),%esi
46a882:	56                   	push   %esi
46a883:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46a887:	e8 04 36 fb ff       	call   0x41de90
46a88c:	8d 46 10             	lea    0x10(%esi),%eax
46a88f:	50                   	push   %eax
46a890:	8d 4b 10             	lea    0x10(%ebx),%ecx
46a893:	e8 f8 35 fb ff       	call   0x41de90
46a898:	8b c3                	mov    %ebx,%eax
46a89a:	e8 02 5c 02 00       	call   0x4904a1
46a89f:	c2 04 00             	ret    $0x4
46a8a2:	cc                   	int3
46a8a3:	cc                   	int3
46a8a4:	cc                   	int3
46a8a5:	cc                   	int3
46a8a6:	cc                   	int3
46a8a7:	cc                   	int3
46a8a8:	cc                   	int3
46a8a9:	cc                   	int3
46a8aa:	cc                   	int3
46a8ab:	cc                   	int3
46a8ac:	cc                   	int3
46a8ad:	cc                   	int3
46a8ae:	cc                   	int3
46a8af:	cc                   	int3
46a8b0:	a1 24 73 4a 00       	mov    0x4a7324,%eax
46a8b5:	c3                   	ret
46a8b6:	cc                   	int3
46a8b7:	cc                   	int3
46a8b8:	cc                   	int3
46a8b9:	cc                   	int3
46a8ba:	cc                   	int3
46a8bb:	cc                   	int3
46a8bc:	cc                   	int3
46a8bd:	cc                   	int3
46a8be:	cc                   	int3
46a8bf:	cc                   	int3
46a8c0:	a1 40 73 4a 00       	mov    0x4a7340,%eax
46a8c5:	c3                   	ret
46a8c6:	cc                   	int3
46a8c7:	cc                   	int3
46a8c8:	cc                   	int3
46a8c9:	cc                   	int3
46a8ca:	cc                   	int3
46a8cb:	cc                   	int3
46a8cc:	cc                   	int3
46a8cd:	cc                   	int3
46a8ce:	cc                   	int3
46a8cf:	cc                   	int3
46a8d0:	8b ff                	mov    %edi,%edi
46a8d2:	55                   	push   %ebp
46a8d3:	8b ec                	mov    %esp,%ebp
46a8d5:	56                   	push   %esi
46a8d6:	8b f1                	mov    %ecx,%esi
46a8d8:	e8 15 00 00 00       	call   0x46a8f2
46a8dd:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
46a8e1:	74 08                	je     0x46a8eb
46a8e3:	56                   	push   %esi
46a8e4:	ff 15 10 74 4a 00    	call   *0x4a7410
46a8ea:	59                   	pop    %ecx
46a8eb:	8b c6                	mov    %esi,%eax
46a8ed:	5e                   	pop    %esi
46a8ee:	5d                   	pop    %ebp
46a8ef:	c2 04 00             	ret    $0x4
46a8f2:	8b ff                	mov    %edi,%edi
46a8f4:	55                   	push   %ebp
46a8f5:	8b ec                	mov    %esp,%ebp
46a8f7:	6a ff                	push   $0xffffffff
46a8f9:	68 7b 13 49 00       	push   $0x49137b
46a8fe:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
46a904:	50                   	push   %eax
46a905:	56                   	push   %esi
46a906:	57                   	push   %edi
46a907:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
46a90c:	33 c5                	xor    %ebp,%eax
46a90e:	50                   	push   %eax
46a90f:	8d 45 f4             	lea    -0xc(%ebp),%eax
46a912:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
46a918:	8b f1                	mov    %ecx,%esi
46a91a:	8d be 80 00 00 00    	lea    0x80(%esi),%edi
46a920:	c7 06 dc 55 40 00    	movl   $0x4055dc,(%esi)
46a926:	8b cf                	mov    %edi,%ecx
46a928:	e8 55 06 00 00       	call   0x46af82
46a92d:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
46a933:	8d 8e 90 00 00 00    	lea    0x90(%esi),%ecx
46a939:	3b 86 98 00 00 00    	cmp    0x98(%esi),%eax
46a93f:	74 06                	je     0x46a947
46a941:	89 86 98 00 00 00    	mov    %eax,0x98(%esi)
46a947:	e8 c4 2f fb ff       	call   0x41d910
46a94c:	8b cf                	mov    %edi,%ecx
46a94e:	e8 2c 07 00 00       	call   0x46b07f
46a953:	8b ce                	mov    %esi,%ecx
46a955:	ff 15 38 73 4a 00    	call   *0x4a7338
46a95b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46a95e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46a965:	59                   	pop    %ecx
46a966:	5f                   	pop    %edi
46a967:	5e                   	pop    %esi
46a968:	c9                   	leave
46a969:	c3                   	ret
46a96a:	cc                   	int3
46a96b:	cc                   	int3
46a96c:	cc                   	int3
46a96d:	cc                   	int3
46a96e:	cc                   	int3
46a96f:	cc                   	int3
46a970:	6a 2c                	push   $0x2c
46a972:	b8 8b 53 49 00       	mov    $0x49538b,%eax
46a977:	e8 57 5b 02 00       	call   0x4904d3
46a97c:	8b f1                	mov    %ecx,%esi
46a97e:	8b 7d 0c             	mov    0xc(%ebp),%edi
46a981:	57                   	push   %edi
46a982:	ff 75 08             	push   0x8(%ebp)
46a985:	ff 15 30 73 4a 00    	call   *0x4a7330
46a98b:	8d 9e 80 00 00 00    	lea    0x80(%esi),%ebx
46a991:	89 45 e8             	mov    %eax,-0x18(%ebp)
46a994:	8b cb                	mov    %ebx,%ecx
46a996:	89 5d f0             	mov    %ebx,-0x10(%ebp)
46a999:	e8 e4 05 00 00       	call   0x46af82
46a99e:	57                   	push   %edi
46a99f:	8b cb                	mov    %ebx,%ecx
46a9a1:	e8 11 06 00 00       	call   0x46afb7
46a9a6:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
46a9ac:	8d 9e 90 00 00 00    	lea    0x90(%esi),%ebx
46a9b2:	3b 86 98 00 00 00    	cmp    0x98(%esi),%eax
46a9b8:	74 06                	je     0x46a9c0
46a9ba:	89 86 98 00 00 00    	mov    %eax,0x98(%esi)
46a9c0:	57                   	push   %edi
46a9c1:	8b cb                	mov    %ebx,%ecx
46a9c3:	e8 f4 06 00 00       	call   0x46b0bc
46a9c8:	85 ff                	test   %edi,%edi
46a9ca:	0f 8e d1 00 00 00    	jle    0x46aaa1
46a9d0:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
46a9d7:	83 65 cc 00          	andl   $0x0,-0x34(%ebp)
46a9db:	83 65 d0 00          	andl   $0x0,-0x30(%ebp)
46a9df:	83 65 d4 00          	andl   $0x0,-0x2c(%ebp)
46a9e3:	83 65 dc 00          	andl   $0x0,-0x24(%ebp)
46a9e7:	83 65 e0 00          	andl   $0x0,-0x20(%ebp)
46a9eb:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
46a9ef:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46a9f2:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
46a9f9:	83 79 04 00          	cmpl   $0x0,0x4(%ecx)
46a9fd:	75 09                	jne    0x46aa08
46a9ff:	8b 41 08             	mov    0x8(%ecx),%eax
46aa02:	33 d2                	xor    %edx,%edx
46aa04:	33 f6                	xor    %esi,%esi
46aa06:	eb 14                	jmp    0x46aa1c
46aa08:	8b 51 08             	mov    0x8(%ecx),%edx
46aa0b:	8b c2                	mov    %edx,%eax
46aa0d:	2b 51 04             	sub    0x4(%ecx),%edx
46aa10:	8b 71 0c             	mov    0xc(%ecx),%esi
46aa13:	2b 71 04             	sub    0x4(%ecx),%esi
46aa16:	c1 fa 05             	sar    $0x5,%edx
46aa19:	c1 fe 05             	sar    $0x5,%esi
46aa1c:	3b d6                	cmp    %esi,%edx
46aa1e:	73 20                	jae    0x46aa40
46aa20:	ff 75 e8             	push   -0x18(%ebp)
46aa23:	33 d2                	xor    %edx,%edx
46aa25:	8d 70 20             	lea    0x20(%eax),%esi
46aa28:	ff 75 e8             	push   -0x18(%ebp)
46aa2b:	42                   	inc    %edx
46aa2c:	51                   	push   %ecx
46aa2d:	8d 4d c8             	lea    -0x38(%ebp),%ecx
46aa30:	51                   	push   %ecx
46aa31:	8b c8                	mov    %eax,%ecx
46aa33:	e8 f1 09 00 00       	call   0x46b429
46aa38:	8b 45 f0             	mov    -0x10(%ebp),%eax
46aa3b:	89 70 08             	mov    %esi,0x8(%eax)
46aa3e:	eb 0b                	jmp    0x46aa4b
46aa40:	8d 55 c8             	lea    -0x38(%ebp),%edx
46aa43:	52                   	push   %edx
46aa44:	51                   	push   %ecx
46aa45:	50                   	push   %eax
46aa46:	e8 6f 07 00 00       	call   0x46b1ba
46aa4b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
46aa4f:	8d 4d c8             	lea    -0x38(%ebp),%ecx
46aa52:	e8 0e 34 fb ff       	call   0x41de65
46aa57:	8b 73 04             	mov    0x4(%ebx),%esi
46aa5a:	85 f6                	test   %esi,%esi
46aa5c:	75 09                	jne    0x46aa67