879941:	8b 47 10             	mov    0x10(%edi),%eax
879944:	89 41 08             	mov    %eax,0x8(%ecx)
879947:	89 4f 10             	mov    %ecx,0x10(%edi)
87994a:	83 e9 10             	sub    $0x10,%ecx
87994d:	83 ea 01             	sub    $0x1,%edx
879950:	79 ef                	jns    0x879941
879952:	8b 5f 10             	mov    0x10(%edi),%ebx
879955:	85 db                	test   %ebx,%ebx
879957:	74 32                	je     0x87998b
879959:	8b 73 08             	mov    0x8(%ebx),%esi
87995c:	6a 10                	push   $0x10
87995e:	6a 00                	push   $0x0
879960:	53                   	push   %ebx
879961:	89 5d fc             	mov    %ebx,-0x4(%ebp)
879964:	e8 4f ae b9 ff       	call   0x4147b8
879969:	89 73 08             	mov    %esi,0x8(%ebx)
87996c:	83 c4 0c             	add    $0xc,%esp
87996f:	8b 4f 10             	mov    0x10(%edi),%ecx
879972:	8b c3                	mov    %ebx,%eax
879974:	8b 49 08             	mov    0x8(%ecx),%ecx
879977:	ff 47 0c             	incl   0xc(%edi)
87997a:	89 4f 10             	mov    %ecx,0x10(%edi)
87997d:	8b 4d 08             	mov    0x8(%ebp),%ecx
879980:	5f                   	pop    %edi
879981:	5e                   	pop    %esi
879982:	89 0b                	mov    %ecx,(%ebx)
879984:	5b                   	pop    %ebx
879985:	8b e5                	mov    %ebp,%esp
879987:	5d                   	pop    %ebp
879988:	c2 04 00             	ret    $0x4
87998b:	e8 d6 85 bb ff       	call   0x431f66
879990:	cc                   	int3
879991:	cc                   	int3
879992:	cc                   	int3
879993:	cc                   	int3
879994:	cc                   	int3
879995:	cc                   	int3
879996:	cc                   	int3
879997:	cc                   	int3
879998:	cc                   	int3
879999:	cc                   	int3
87999a:	cc                   	int3
87999b:	cc                   	int3
87999c:	cc                   	int3
87999d:	cc                   	int3
87999e:	cc                   	int3
87999f:	cc                   	int3
8799a0:	cc                   	int3
8799a1:	cc                   	int3
8799a2:	cc                   	int3
8799a3:	cc                   	int3
8799a4:	cc                   	int3
8799a5:	cc                   	int3
8799a6:	cc                   	int3
8799a7:	cc                   	int3
8799a8:	cc                   	int3
8799a9:	cc                   	int3
8799aa:	cc                   	int3
8799ab:	cc                   	int3
8799ac:	cc                   	int3
8799ad:	cc                   	int3
8799ae:	cc                   	int3
8799af:	cc                   	int3
8799b0:	55                   	push   %ebp
8799b1:	8b ec                	mov    %esp,%ebp
8799b3:	56                   	push   %esi
8799b4:	8b f1                	mov    %ecx,%esi
8799b6:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
8799ba:	75 2e                	jne    0x8799ea
8799bc:	6a 0c                	push   $0xc
8799be:	ff 76 18             	push   0x18(%esi)
8799c1:	8d 46 14             	lea    0x14(%esi),%eax
8799c4:	50                   	push   %eax
8799c5:	e8 e2 96 b9 ff       	call   0x4130ac
8799ca:	8b 56 18             	mov    0x18(%esi),%edx
8799cd:	83 c0 08             	add    $0x8,%eax
8799d0:	6b ca 0c             	imul   $0xc,%edx,%ecx
8799d3:	83 c1 f4             	add    $0xfffffff4,%ecx
8799d6:	03 c8                	add    %eax,%ecx
8799d8:	eb 0b                	jmp    0x8799e5
8799da:	8b 46 10             	mov    0x10(%esi),%eax
8799dd:	89 01                	mov    %eax,(%ecx)
8799df:	89 4e 10             	mov    %ecx,0x10(%esi)
8799e2:	83 e9 0c             	sub    $0xc,%ecx
8799e5:	83 ea 01             	sub    $0x1,%edx
8799e8:	79 f0                	jns    0x8799da
8799ea:	8b 46 10             	mov    0x10(%esi),%eax
8799ed:	85 c0                	test   %eax,%eax
8799ef:	74 18                	je     0x879a09
8799f1:	8b 08                	mov    (%eax),%ecx
8799f3:	89 4e 10             	mov    %ecx,0x10(%esi)
8799f6:	8b 4d 08             	mov    0x8(%ebp),%ecx
8799f9:	89 48 04             	mov    %ecx,0x4(%eax)
8799fc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
8799ff:	89 08                	mov    %ecx,(%eax)
879a01:	ff 46 0c             	incl   0xc(%esi)
879a04:	5e                   	pop    %esi
879a05:	5d                   	pop    %ebp
879a06:	c2 08 00             	ret    $0x8
879a09:	e8 58 85 bb ff       	call   0x431f66
879a0e:	cc                   	int3
879a0f:	cc                   	int3
879a10:	cc                   	int3
879a11:	cc                   	int3
879a12:	cc                   	int3
879a13:	cc                   	int3
879a14:	cc                   	int3
879a15:	cc                   	int3
879a16:	cc                   	int3
879a17:	cc                   	int3
879a18:	cc                   	int3
879a19:	cc                   	int3
879a1a:	cc                   	int3
879a1b:	cc                   	int3
879a1c:	cc                   	int3
879a1d:	cc                   	int3
879a1e:	cc                   	int3
879a1f:	cc                   	int3
879a20:	cc                   	int3
879a21:	cc                   	int3
879a22:	cc                   	int3
879a23:	cc                   	int3
879a24:	cc                   	int3
879a25:	cc                   	int3
879a26:	c2 04 00             	ret    $0x4
879a29:	c2 04 00             	ret    $0x4
879a2c:	c2 04 00             	ret    $0x4
879a2f:	c2 04 00             	ret    $0x4
879a32:	33 c0                	xor    %eax,%eax
879a34:	40                   	inc    %eax
879a35:	c2 04 00             	ret    $0x4
879a38:	c3                   	ret
879a39:	57                   	push   %edi
879a3a:	8b b9 d4 00 00 00    	mov    0xd4(%ecx),%edi
879a40:	85 ff                	test   %edi,%edi
879a42:	74 2c                	je     0x879a70
879a44:	8b 07                	mov    (%edi),%eax
879a46:	53                   	push   %ebx
879a47:	8b 5f 20             	mov    0x20(%edi),%ebx
879a4a:	56                   	push   %esi
879a4b:	8b b0 bc 01 00 00    	mov    0x1bc(%eax),%esi
879a51:	8b ce                	mov    %esi,%ecx
879a53:	e8 0d 2c bb ff       	call   0x42c665
879a58:	8b cf                	mov    %edi,%ecx
879a5a:	ff d6                	call   *%esi
879a5c:	53                   	push   %ebx
879a5d:	ff 15 a4 40 d8 00    	call   *0xd840a4
879a63:	85 c0                	test   %eax,%eax
879a65:	74 07                	je     0x879a6e
879a67:	53                   	push   %ebx
879a68:	ff 15 74 40 d8 00    	call   *0xd84074
879a6e:	5e                   	pop    %esi
879a6f:	5b                   	pop    %ebx
879a70:	5f                   	pop    %edi
879a71:	c3                   	ret
879a72:	cc                   	int3
879a73:	cc                   	int3
879a74:	cc                   	int3
879a75:	cc                   	int3
879a76:	cc                   	int3
879a77:	cc                   	int3
879a78:	cc                   	int3
879a79:	cc                   	int3
879a7a:	cc                   	int3
879a7b:	cc                   	int3
879a7c:	cc                   	int3
879a7d:	cc                   	int3
879a7e:	cc                   	int3
879a7f:	cc                   	int3
879a80:	6a 0c                	push   $0xc
879a82:	b8 10 e6 b9 00       	mov    $0xb9e610,%eax
879a87:	e8 ff 07 b9 ff       	call   0x40a28b
879a8c:	8b f9                	mov    %ecx,%edi
879a8e:	83 bf d4 00 00 00 00 	cmpl   $0x0,0xd4(%edi)
879a95:	0f 84 cd 01 00 00    	je     0x879c68
879a9b:	8b 07                	mov    (%edi),%eax
879a9d:	8b b0 78 01 00 00    	mov    0x178(%eax),%esi
879aa3:	8b ce                	mov    %esi,%ecx
879aa5:	e8 bb 2b bb ff       	call   0x42c665
879aaa:	8b cf                	mov    %edi,%ecx
879aac:	ff d6                	call   *%esi
879aae:	ff 75 08             	push   0x8(%ebp)
879ab1:	8b cf                	mov    %edi,%ecx
879ab3:	8b d8                	mov    %eax,%ebx
879ab5:	e8 28 fb b9 ff       	call   0x4195e2
879aba:	83 f8 f2             	cmp    $0xfffffff2,%eax
879abd:	0f 82 a5 01 00 00    	jb     0x879c68
879ac3:	83 f8 f3             	cmp    $0xfffffff3,%eax
879ac6:	76 63                	jbe    0x879b2b
879ac8:	83 f8 f4             	cmp    $0xfffffff4,%eax
879acb:	74 21                	je     0x879aee
879acd:	83 f8 f5             	cmp    $0xfffffff5,%eax
879ad0:	0f 85 92 01 00 00    	jne    0x879c68
879ad6:	8b 07                	mov    (%edi),%eax
879ad8:	8b b0 c0 01 00 00    	mov    0x1c0(%eax),%esi
879ade:	8b ce                	mov    %esi,%ecx
879ae0:	e8 80 2b bb ff       	call   0x42c665
879ae5:	8b cf                	mov    %edi,%ecx
879ae7:	ff d6                	call   *%esi
879ae9:	e9 7a 01 00 00       	jmp    0x879c68
879aee:	85 db                	test   %ebx,%ebx
879af0:	0f 88 72 01 00 00    	js     0x879c68
879af6:	8b 07                	mov    (%edi),%eax
879af8:	53                   	push   %ebx
879af9:	8b b0 a8 01 00 00    	mov    0x1a8(%eax),%esi
879aff:	8b ce                	mov    %esi,%ecx
879b01:	e8 5f 2b bb ff       	call   0x42c665
879b06:	8b cf                	mov    %edi,%ecx
879b08:	ff d6                	call   *%esi
879b0a:	85 c0                	test   %eax,%eax
879b0c:	0f 84 56 01 00 00    	je     0x879c68
879b12:	8b 07                	mov    (%edi),%eax
879b14:	53                   	push   %ebx
879b15:	8b b0 70 01 00 00    	mov    0x170(%eax),%esi
879b1b:	8b ce                	mov    %esi,%ecx
879b1d:	e8 43 2b bb ff       	call   0x42c665
879b22:	8b cf                	mov    %edi,%ecx
879b24:	ff d6                	call   *%esi
879b26:	e9 3d 01 00 00       	jmp    0x879c68
879b2b:	85 db                	test   %ebx,%ebx
879b2d:	0f 88 35 01 00 00    	js     0x879c68
879b33:	33 c9                	xor    %ecx,%ecx
879b35:	83 f8 f3             	cmp    $0xfffffff3,%eax
879b38:	0f 94 c1             	sete   %cl
879b3b:	89 4d f0             	mov    %ecx,-0x10(%ebp)
879b3e:	85 c9                	test   %ecx,%ecx
879b40:	74 04                	je     0x879b46
879b42:	85 db                	test   %ebx,%ebx
879b44:	eb 16                	jmp    0x879b5c
879b46:	8b 07                	mov    (%edi),%eax
879b48:	8b b0 74 01 00 00    	mov    0x174(%eax),%esi
879b4e:	8b ce                	mov    %esi,%ecx
879b50:	e8 10 2b bb ff       	call   0x42c665
879b55:	8b cf                	mov    %edi,%ecx
879b57:	ff d6                	call   *%esi
879b59:	48                   	dec    %eax
879b5a:	3b d8                	cmp    %eax,%ebx
879b5c:	0f 84 06 01 00 00    	je     0x879c68
879b62:	6a 00                	push   $0x0
879b64:	6a 00                	push   $0x0
879b66:	6a 0b                	push   $0xb
879b68:	ff 77 20             	push   0x20(%edi)
879b6b:	ff 15 20 40 d8 00    	call   *0xd84020
879b71:	8b 07                	mov    (%edi),%eax
879b73:	8d 4d ec             	lea    -0x14(%ebp),%ecx
879b76:	53                   	push   %ebx
879b77:	51                   	push   %ecx
879b78:	8b b0 80 01 00 00    	mov    0x180(%eax),%esi
879b7e:	8b ce                	mov    %esi,%ecx
879b80:	e8 e0 2a bb ff       	call   0x42c665
879b85:	8b cf                	mov    %edi,%ecx
879b87:	ff d6                	call   *%esi
879b89:	8b 07                	mov    (%edi),%eax
879b8b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
879b8f:	53                   	push   %ebx
879b90:	8b b0 88 01 00 00    	mov    0x188(%eax),%esi
879b96:	8b ce                	mov    %esi,%ecx
879b98:	e8 c8 2a bb ff       	call   0x42c665
879b9d:	8b cf                	mov    %edi,%ecx
879b9f:	ff d6                	call   *%esi
879ba1:	8b 0f                	mov    (%edi),%ecx
879ba3:	83 a7 dc 00 00 00 00 	andl   $0x0,0xdc(%edi)
879baa:	53                   	push   %ebx
879bab:	89 45 e8             	mov    %eax,-0x18(%ebp)
879bae:	8b b1 70 01 00 00    	mov    0x170(%ecx),%esi
879bb4:	8b ce                	mov    %esi,%ecx
879bb6:	e8 aa 2a bb ff       	call   0x42c665
879bbb:	8b cf                	mov    %edi,%ecx
879bbd:	ff d6                	call   *%esi
879bbf:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
879bc3:	c7 87 dc 00 00 00 01 	movl   $0x1,0xdc(%edi)
879bca:	00 00 00
879bcd:	74 03                	je     0x879bd2
879bcf:	4b                   	dec    %ebx
879bd0:	eb 01                	jmp    0x879bd3
879bd2:	43                   	inc    %ebx
879bd3:	8b 07                	mov    (%edi),%eax
879bd5:	8d 4d ec             	lea    -0x14(%ebp),%ecx
879bd8:	53                   	push   %ebx
879bd9:	ff 75 e8             	push   -0x18(%ebp)
879bdc:	8b b0 6c 01 00 00    	mov    0x16c(%eax),%esi
879be2:	51                   	push   %ecx
879be3:	8b ce                	mov    %esi,%ecx
879be5:	e8 7b 2a bb ff       	call   0x42c665
879bea:	8b cf                	mov    %edi,%ecx
879bec:	ff d6                	call   *%esi
879bee:	8b 07                	mov    (%edi),%eax
879bf0:	53                   	push   %ebx
879bf1:	8b b0 7c 01 00 00    	mov    0x17c(%eax),%esi
879bf7:	8b ce                	mov    %esi,%ecx
879bf9:	e8 67 2a bb ff       	call   0x42c665
879bfe:	8b cf                	mov    %edi,%ecx
879c00:	ff d6                	call   *%esi
879c02:	6a 00                	push   $0x0
879c04:	6a 01                	push   $0x1
879c06:	6a 0b                	push   $0xb
879c08:	ff 77 20             	push   0x20(%edi)
879c0b:	ff 15 20 40 d8 00    	call   *0xd84020
879c11:	8b 07                	mov    (%edi),%eax
879c13:	8b b0 c4 01 00 00    	mov    0x1c4(%eax),%esi
879c19:	8b ce                	mov    %esi,%ecx
879c1b:	e8 45 2a bb ff       	call   0x42c665
879c20:	8b cf                	mov    %edi,%ecx
879c22:	ff d6                	call   *%esi
879c24:	50                   	push   %eax
879c25:	e8 64 bb ba ff       	call   0x42578e
879c2a:	85 c0                	test   %eax,%eax
879c2c:	74 0d                	je     0x879c3b
879c2e:	6a 01                	push   $0x1
879c30:	6a 00                	push   $0x0
879c32:	ff 70 20             	push   0x20(%eax)
879c35:	ff 15 e8 3d d8 00    	call   *0xd83de8
879c3b:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
879c3f:	8b 07                	mov    (%edi),%eax
879c41:	53                   	push   %ebx
879c42:	74 08                	je     0x879c4c
879c44:	8b b0 b4 01 00 00    	mov    0x1b4(%eax),%esi
879c4a:	eb 06                	jmp    0x879c52
879c4c:	8b b0 b8 01 00 00    	mov    0x1b8(%eax),%esi
879c52:	8b ce                	mov    %esi,%ecx
879c54:	e8 0c 2a bb ff       	call   0x42c665
879c59:	8b cf                	mov    %edi,%ecx
879c5b:	ff d6                	call   *%esi
879c5d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
879c60:	8d 49 f0             	lea    -0x10(%ecx),%ecx
879c63:	e8 ac af b8 ff       	call   0x404c14
879c68:	e8 aa 47 b9 ff       	call   0x40e417
879c6d:	c2 04 00             	ret    $0x4
879c70:	cc                   	int3
879c71:	cc                   	int3
879c72:	cc                   	int3
879c73:	cc                   	int3
879c74:	cc                   	int3
879c75:	cc                   	int3
879c76:	cc                   	int3
879c77:	cc                   	int3
879c78:	cc                   	int3
879c79:	cc                   	int3
879c7a:	cc                   	int3
879c7b:	cc                   	int3
879c7c:	cc                   	int3
879c7d:	cc                   	int3
879c7e:	cc                   	int3
879c7f:	cc                   	int3
879c80:	cc                   	int3
879c81:	cc                   	int3
879c82:	cc                   	int3
879c83:	cc                   	int3
879c84:	cc                   	int3
879c85:	cc                   	int3