61b81b:	8b c6                	mov    %esi,%eax
61b81d:	5e                   	pop    %esi
61b81e:	5d                   	pop    %ebp
61b81f:	c2 04 00             	ret    $0x4
61b822:	cc                   	int3
61b823:	cc                   	int3
61b824:	cc                   	int3
61b825:	cc                   	int3
61b826:	cc                   	int3
61b827:	cc                   	int3
61b828:	cc                   	int3
61b829:	cc                   	int3
61b82a:	cc                   	int3
61b82b:	cc                   	int3
61b82c:	cc                   	int3
61b82d:	cc                   	int3
61b82e:	cc                   	int3
61b82f:	cc                   	int3
61b830:	55                   	push   %ebp
61b831:	8b ec                	mov    %esp,%ebp
61b833:	56                   	push   %esi
61b834:	8b f1                	mov    %ecx,%esi
61b836:	e8 dd f9 ff ff       	call   0x61b218
61b83b:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
61b83f:	74 0a                	je     0x61b84b
61b841:	6a 68                	push   $0x68
61b843:	56                   	push   %esi
61b844:	e8 29 58 fc ff       	call   0x5e1072
61b849:	59                   	pop    %ecx
61b84a:	59                   	pop    %ecx
61b84b:	8b c6                	mov    %esi,%eax
61b84d:	5e                   	pop    %esi
61b84e:	5d                   	pop    %ebp
61b84f:	c2 04 00             	ret    $0x4
61b852:	55                   	push   %ebp
61b853:	8b ec                	mov    %esp,%ebp
61b855:	51                   	push   %ecx
61b856:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
61b85a:	56                   	push   %esi
61b85b:	8b 75 08             	mov    0x8(%ebp),%esi
61b85e:	51                   	push   %ecx
61b85f:	8b ce                	mov    %esi,%ecx
61b861:	e8 7f f4 ff ff       	call   0x61ace5
61b866:	83 66 10 00          	andl   $0x0,0x10(%esi)
61b86a:	8b c6                	mov    %esi,%eax
61b86c:	5e                   	pop    %esi
61b86d:	8b e5                	mov    %ebp,%esp
61b86f:	5d                   	pop    %ebp
61b870:	c2 04 00             	ret    $0x4
61b873:	cc                   	int3
61b874:	cc                   	int3
61b875:	cc                   	int3
61b876:	cc                   	int3
61b877:	cc                   	int3
61b878:	cc                   	int3
61b879:	cc                   	int3
61b87a:	cc                   	int3
61b87b:	cc                   	int3
61b87c:	cc                   	int3
61b87d:	cc                   	int3
61b87e:	cc                   	int3
61b87f:	cc                   	int3
61b880:	55                   	push   %ebp
61b881:	8b ec                	mov    %esp,%ebp
61b883:	ff 75 0c             	push   0xc(%ebp)
61b886:	8b 4d 08             	mov    0x8(%ebp),%ecx
61b889:	e8 dd fc ff ff       	call   0x61b56b
61b88e:	5d                   	pop    %ebp
61b88f:	c2 08 00             	ret    $0x8
61b892:	cc                   	int3
61b893:	cc                   	int3
61b894:	cc                   	int3
61b895:	cc                   	int3
61b896:	cc                   	int3
61b897:	cc                   	int3
61b898:	cc                   	int3
61b899:	cc                   	int3
61b89a:	cc                   	int3
61b89b:	cc                   	int3
61b89c:	cc                   	int3
61b89d:	cc                   	int3
61b89e:	cc                   	int3
61b89f:	cc                   	int3
61b8a0:	55                   	push   %ebp
61b8a1:	8b ec                	mov    %esp,%ebp
61b8a3:	8b 45 0c             	mov    0xc(%ebp),%eax
61b8a6:	56                   	push   %esi
61b8a7:	8b 75 08             	mov    0x8(%ebp),%esi
61b8aa:	57                   	push   %edi
61b8ab:	8b f9                	mov    %ecx,%edi
61b8ad:	8b 4f 14             	mov    0x14(%edi),%ecx
61b8b0:	39 4e 08             	cmp    %ecx,0x8(%esi)
61b8b3:	75 40                	jne    0x61b8f5
61b8b5:	39 48 08             	cmp    %ecx,0x8(%eax)
61b8b8:	75 3b                	jne    0x61b8f5
61b8ba:	ff 70 0c             	push   0xc(%eax)
61b8bd:	8b 56 0c             	mov    0xc(%esi),%edx
61b8c0:	8b 4e 08             	mov    0x8(%esi),%ecx
61b8c3:	52                   	push   %edx
61b8c4:	ff 15 a4 93 72 00    	call   *0x7293a4
61b8ca:	85 c0                	test   %eax,%eax
61b8cc:	75 15                	jne    0x61b8e3
61b8ce:	ff 76 08             	push   0x8(%esi)
61b8d1:	ff 77 18             	push   0x18(%edi)
61b8d4:	ff 76 0c             	push   0xc(%esi)
61b8d7:	e8 94 22 00 00       	call   0x61db70
61b8dc:	83 c4 0c             	add    $0xc,%esp
61b8df:	85 c0                	test   %eax,%eax
61b8e1:	78 31                	js     0x61b914
61b8e3:	ff 77 18             	push   0x18(%edi)
61b8e6:	8b 56 0c             	mov    0xc(%esi),%edx
61b8e9:	8b 4e 08             	mov    0x8(%esi),%ecx
61b8ec:	52                   	push   %edx
61b8ed:	ff 15 a8 93 72 00    	call   *0x7293a8
61b8f3:	eb 1f                	jmp    0x61b914
61b8f5:	50                   	push   %eax
61b8f6:	8b ce                	mov    %esi,%ecx
61b8f8:	e8 6e fc ff ff       	call   0x61b56b
61b8fd:	83 c7 0c             	add    $0xc,%edi
61b900:	8b ce                	mov    %esi,%ecx
61b902:	57                   	push   %edi
61b903:	e8 9e 22 00 00       	call   0x61dba6
61b908:	85 c0                	test   %eax,%eax
61b90a:	78 08                	js     0x61b914
61b90c:	57                   	push   %edi
61b90d:	8b ce                	mov    %esi,%ecx
61b90f:	e8 aa fc ff ff       	call   0x61b5be
61b914:	5f                   	pop    %edi
61b915:	8b c6                	mov    %esi,%eax
61b917:	5e                   	pop    %esi
61b918:	5d                   	pop    %ebp
61b919:	c2 08 00             	ret    $0x8
61b91c:	cc                   	int3
61b91d:	cc                   	int3
61b91e:	cc                   	int3
61b91f:	cc                   	int3
61b920:	55                   	push   %ebp
61b921:	8b ec                	mov    %esp,%ebp
61b923:	8b 49 04             	mov    0x4(%ecx),%ecx
61b926:	ff 75 0c             	push   0xc(%ebp)
61b929:	ff 75 08             	push   0x8(%ebp)
61b92c:	8b 01                	mov    (%ecx),%eax
61b92e:	ff 50 3c             	call   *0x3c(%eax)
61b931:	8b 4d 08             	mov    0x8(%ebp),%ecx
61b934:	50                   	push   %eax
61b935:	e8 41 f9 ff ff       	call   0x61b27b
61b93a:	5d                   	pop    %ebp
61b93b:	c2 08 00             	ret    $0x8
61b93e:	cc                   	int3
61b93f:	cc                   	int3
61b940:	6a 14                	push   $0x14
61b942:	b8 ae 28 66 00       	mov    $0x6628ae,%eax
61b947:	e8 6f 66 fc ff       	call   0x5e1fbb
61b94c:	8b f1                	mov    %ecx,%esi
61b94e:	ff 75 0c             	push   0xc(%ebp)
61b951:	8d 45 e0             	lea    -0x20(%ebp),%eax
61b954:	ff 75 08             	push   0x8(%ebp)
61b957:	50                   	push   %eax
61b958:	e8 c6 fa ff ff       	call   0x61b423
61b95d:	83 c4 0c             	add    $0xc,%esp
61b960:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
61b964:	8d 4e 20             	lea    0x20(%esi),%ecx
61b967:	50                   	push   %eax
61b968:	e8 0e f9 ff ff       	call   0x61b27b
61b96d:	8b f0                	mov    %eax,%esi
61b96f:	ff 75 e8             	push   -0x18(%ebp)
61b972:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
61b975:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
61b97c:	ff 75 ec             	push   -0x14(%ebp)
61b97f:	e8 b0 da 00 00       	call   0x629434
61b984:	8b c6                	mov    %esi,%eax
61b986:	e8 0a 66 fc ff       	call   0x5e1f95
61b98b:	c2 08 00             	ret    $0x8
61b98e:	cc                   	int3
61b98f:	cc                   	int3
61b990:	6a 14                	push   $0x14
61b992:	b8 ae 28 66 00       	mov    $0x6628ae,%eax
61b997:	e8 1f 66 fc ff       	call   0x5e1fbb
61b99c:	8b f1                	mov    %ecx,%esi
61b99e:	8b 7d 08             	mov    0x8(%ebp),%edi
61b9a1:	8b 4e 14             	mov    0x14(%esi),%ecx
61b9a4:	8b 45 0c             	mov    0xc(%ebp),%eax
61b9a7:	39 4f 08             	cmp    %ecx,0x8(%edi)
61b9aa:	75 45                	jne    0x61b9f1
61b9ac:	39 48 08             	cmp    %ecx,0x8(%eax)
61b9af:	75 40                	jne    0x61b9f1
61b9b1:	ff 70 0c             	push   0xc(%eax)
61b9b4:	8b 56 2c             	mov    0x2c(%esi),%edx
61b9b7:	ff 77 0c             	push   0xc(%edi)
61b9ba:	8b 4f 08             	mov    0x8(%edi),%ecx
61b9bd:	ff 15 a4 93 72 00    	call   *0x7293a4
61b9c3:	85 c0                	test   %eax,%eax
61b9c5:	75 15                	jne    0x61b9dc
61b9c7:	ff 77 08             	push   0x8(%edi)
61b9ca:	ff 76 18             	push   0x18(%esi)
61b9cd:	ff 76 2c             	push   0x2c(%esi)
61b9d0:	e8 9b 21 00 00       	call   0x61db70
61b9d5:	83 c4 0c             	add    $0xc,%esp
61b9d8:	85 c0                	test   %eax,%eax
61b9da:	78 10                	js     0x61b9ec
61b9dc:	ff 76 18             	push   0x18(%esi)
61b9df:	8b 56 2c             	mov    0x2c(%esi),%edx
61b9e2:	8b 4f 08             	mov    0x8(%edi),%ecx
61b9e5:	52                   	push   %edx
61b9e6:	ff 15 a8 93 72 00    	call   *0x7293a8
61b9ec:	8d 46 20             	lea    0x20(%esi),%eax
61b9ef:	eb 4f                	jmp    0x61ba40
61b9f1:	50                   	push   %eax
61b9f2:	8d 45 e0             	lea    -0x20(%ebp),%eax
61b9f5:	57                   	push   %edi
61b9f6:	50                   	push   %eax
61b9f7:	e8 27 fa ff ff       	call   0x61b423
61b9fc:	83 c4 0c             	add    $0xc,%esp
61b9ff:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
61ba03:	8d 7e 34             	lea    0x34(%esi),%edi
61ba06:	50                   	push   %eax
61ba07:	8b cf                	mov    %edi,%ecx
61ba09:	e8 6d f8 ff ff       	call   0x61b27b
61ba0e:	ff 75 e8             	push   -0x18(%ebp)
61ba11:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
61ba14:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
61ba1b:	ff 75 ec             	push   -0x14(%ebp)
61ba1e:	e8 11 da 00 00       	call   0x629434
61ba23:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
61ba27:	83 c6 0c             	add    $0xc,%esi
61ba2a:	56                   	push   %esi
61ba2b:	8b cf                	mov    %edi,%ecx
61ba2d:	e8 74 21 00 00       	call   0x61dba6
61ba32:	85 c0                	test   %eax,%eax
61ba34:	78 08                	js     0x61ba3e
61ba36:	56                   	push   %esi
61ba37:	8b cf                	mov    %edi,%ecx
61ba39:	e8 80 fb ff ff       	call   0x61b5be
61ba3e:	8b c7                	mov    %edi,%eax
61ba40:	e8 50 65 fc ff       	call   0x5e1f95
61ba45:	c2 08 00             	ret    $0x8
61ba48:	cc                   	int3
61ba49:	cc                   	int3
61ba4a:	cc                   	int3
61ba4b:	cc                   	int3
61ba4c:	cc                   	int3
61ba4d:	cc                   	int3
61ba4e:	cc                   	int3
61ba4f:	cc                   	int3
61ba50:	55                   	push   %ebp
61ba51:	8b ec                	mov    %esp,%ebp
61ba53:	8b 49 04             	mov    0x4(%ecx),%ecx
61ba56:	8b 01                	mov    (%ecx),%eax
61ba58:	5d                   	pop    %ebp
61ba59:	ff 60 3c             	jmp    *0x3c(%eax)
61ba5c:	55                   	push   %ebp
61ba5d:	8b ec                	mov    %esp,%ebp
61ba5f:	83 ec 18             	sub    $0x18,%esp
61ba62:	53                   	push   %ebx
61ba63:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
61ba66:	56                   	push   %esi
61ba67:	8b 75 0c             	mov    0xc(%ebp),%esi
61ba6a:	57                   	push   %edi
61ba6b:	6a 02                	push   $0x2
61ba6d:	8d 04 9e             	lea    (%esi,%ebx,4),%eax
61ba70:	89 45 f8             	mov    %eax,-0x8(%ebp)
61ba73:	8d 3c de             	lea    (%esi,%ebx,8),%edi
61ba76:	6b c3 0c             	imul   $0xc,%ebx,%eax
61ba79:	89 7d f0             	mov    %edi,-0x10(%ebp)
61ba7c:	03 c6                	add    %esi,%eax
61ba7e:	89 45 f4             	mov    %eax,-0xc(%ebp)
61ba81:	58                   	pop    %eax
61ba82:	53                   	push   %ebx
61ba83:	ff 75 18             	push   0x18(%ebp)
61ba86:	89 45 ec             	mov    %eax,-0x14(%ebp)
61ba89:	e8 be 2a 00 00       	call   0x61e54c
61ba8e:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
61ba92:	59                   	pop    %ecx
61ba93:	59                   	pop    %ecx
61ba94:	6b cb 03             	imul   $0x3,%ebx,%ecx
61ba97:	89 45 fc             	mov    %eax,-0x4(%ebp)
61ba9a:	32 c0                	xor    %al,%al
61ba9c:	88 45 1f             	mov    %al,0x1f(%ebp)
61ba9f:	85 c9                	test   %ecx,%ecx
61baa1:	74 09                	je     0x61baac
61baa3:	33 c0                	xor    %eax,%eax
61baa5:	8b fe                	mov    %esi,%edi
61baa7:	f3 ab                	rep stos %eax,%es:(%edi)
61baa9:	8b 7d f0             	mov    -0x10(%ebp),%edi
61baac:	ff 75 14             	push   0x14(%ebp)
61baaf:	c7 06 01 00 00 00    	movl   $0x1,(%esi)
61bab5:	ff 75 10             	push   0x10(%ebp)
61bab8:	57                   	push   %edi
61bab9:	e8 4b 22 00 00       	call   0x61dd09
61babe:	53                   	push   %ebx
61babf:	ff 75 18             	push   0x18(%ebp)
61bac2:	ff 75 f4             	push   -0xc(%ebp)
61bac5:	e8 3f 22 00 00       	call   0x61dd09
61baca:	83 c4 18             	add    $0x18,%esp
61bacd:	8b 75 e8             	mov    -0x18(%ebp),%esi
61bad0:	8b 17                	mov    (%edi),%edx
61bad2:	85 d2                	test   %edx,%edx
61bad4:	75 44                	jne    0x61bb1a
61bad6:	8b 55 fc             	mov    -0x4(%ebp),%edx
61bad9:	52                   	push   %edx
61bada:	57                   	push   %edi
61badb:	e8 6c 2a 00 00       	call   0x61e54c
61bae0:	59                   	pop    %ecx
61bae1:	59                   	pop    %ecx
61bae2:	85 c0                	test   %eax,%eax
61bae4:	0f 84 18 01 00 00    	je     0x61bc02
61baea:	6a 01                	push   $0x1
61baec:	52                   	push   %edx
61baed:	57                   	push   %edi
61baee:	e8 e8 d3 00 00       	call   0x628edb
61baf3:	8b 4d ec             	mov    -0x14(%ebp),%ecx
61baf6:	8b 55 f8             	mov    -0x8(%ebp),%edx
61baf9:	6a 01                	push   $0x1
61bafb:	8b 44 8a fc          	mov    -0x4(%edx,%ecx,4),%eax
61baff:	f7 d8                	neg    %eax
61bb01:	1b c0                	sbb    %eax,%eax
61bb03:	83 e0 02             	and    $0x2,%eax
61bb06:	03 c8                	add    %eax,%ecx
61bb08:	51                   	push   %ecx
61bb09:	52                   	push   %edx
61bb0a:	89 4d ec             	mov    %ecx,-0x14(%ebp)
61bb0d:	e8 36 d3 00 00       	call   0x628e48
61bb12:	83 c4 18             	add    $0x18,%esp
61bb15:	83 c6 20             	add    $0x20,%esi
61bb18:	eb b6                	jmp    0x61bad0
61bb1a:	0f bc c2             	bsf    %edx,%eax
61bb1d:	8b c8                	mov    %eax,%ecx
61bb1f:	89 45 f0             	mov    %eax,-0x10(%ebp)
61bb22:	d3 ea                	shr    %cl,%edx
61bb24:	03 f0                	add    %eax,%esi
61bb26:	83 fa 01             	cmp    $0x1,%edx
61bb29:	89 75 e8             	mov    %esi,-0x18(%ebp)
61bb2c:	8b 55 fc             	mov    -0x4(%ebp),%edx
61bb2f:	75 1d                	jne    0x61bb4e
61bb31:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
61bb35:	75 17                	jne    0x61bb4e
61bb37:	8d 42 fe             	lea    -0x2(%edx),%eax
61bb3a:	50                   	push   %eax
61bb3b:	8d 47 08             	lea    0x8(%edi),%eax
61bb3e:	50                   	push   %eax
61bb3f:	e8 08 2a 00 00       	call   0x61e54c
61bb44:	59                   	pop    %ecx
61bb45:	59                   	pop    %ecx
61bb46:	85 c0                	test   %eax,%eax
61bb48:	0f 84 cb 00 00 00    	je     0x61bc19
61bb4e:	ff 75 f0             	push   -0x10(%ebp)
61bb51:	52                   	push   %edx
61bb52:	57                   	push   %edi
61bb53:	e8 2c d3 00 00       	call   0x628e84
61bb58:	ff 75 f0             	push   -0x10(%ebp)