863928:	8b 7d 08             	mov    0x8(%ebp),%edi
86392b:	0f b7 77 0c          	movzwl 0xc(%edi),%esi
86392f:	e8 e1 2c bd ff       	call   0x436615
863934:	50                   	push   %eax
863935:	8d 4d ec             	lea    -0x14(%ebp),%ecx
863938:	e8 d7 62 ba ff       	call   0x409c14
86393d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
863941:	8d 45 ec             	lea    -0x14(%ebp),%eax
863944:	50                   	push   %eax
863945:	56                   	push   %esi
863946:	8b cb                	mov    %ebx,%ecx
863948:	e8 ac b8 bb ff       	call   0x41f1f9
86394d:	0f b7 77 14          	movzwl 0x14(%edi),%esi
863951:	e8 bf 2c bd ff       	call   0x436615
863956:	50                   	push   %eax
863957:	8d 4d f0             	lea    -0x10(%ebp),%ecx
86395a:	e8 b5 62 ba ff       	call   0x409c14
86395f:	8d 45 f0             	lea    -0x10(%ebp),%eax
863962:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
863966:	50                   	push   %eax
863967:	56                   	push   %esi
863968:	8b cb                	mov    %ebx,%ecx
86396a:	e8 8a b8 bb ff       	call   0x41f1f9
86396f:	ff 75 f0             	push   -0x10(%ebp)
863972:	ff 75 ec             	push   -0x14(%ebp)
863975:	e8 14 7d bc ff       	call   0x42b68e
86397a:	59                   	pop    %ecx
86397b:	59                   	pop    %ecx
86397c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
86397f:	8b f0                	mov    %eax,%esi
863981:	83 c1 f0             	add    $0xfffffff0,%ecx
863984:	e8 8b 12 ba ff       	call   0x404c14
863989:	8b 4d ec             	mov    -0x14(%ebp),%ecx
86398c:	83 c1 f0             	add    $0xfffffff0,%ecx
86398f:	e8 80 12 ba ff       	call   0x404c14
863994:	8b c6                	mov    %esi,%eax
863996:	e8 7c aa ba ff       	call   0x40e417
86399b:	c2 04 00             	ret    $0x4
86399e:	cc                   	int3
86399f:	cc                   	int3
8639a0:	cc                   	int3
8639a1:	cc                   	int3
8639a2:	cc                   	int3
8639a3:	cc                   	int3
8639a4:	cc                   	int3
8639a5:	cc                   	int3
8639a6:	cc                   	int3
8639a7:	cc                   	int3
8639a8:	cc                   	int3
8639a9:	cc                   	int3
8639aa:	cc                   	int3
8639ab:	cc                   	int3
8639ac:	cc                   	int3
8639ad:	cc                   	int3
8639ae:	cc                   	int3
8639af:	cc                   	int3
8639b0:	cc                   	int3
8639b1:	cc                   	int3
8639b2:	cc                   	int3
8639b3:	cc                   	int3
8639b4:	cc                   	int3
8639b5:	cc                   	int3
8639b6:	cc                   	int3
8639b7:	cc                   	int3
8639b8:	cc                   	int3
8639b9:	cc                   	int3
8639ba:	cc                   	int3
8639bb:	cc                   	int3
8639bc:	cc                   	int3
8639bd:	cc                   	int3
8639be:	cc                   	int3
8639bf:	55                   	push   %ebp
8639c0:	8b ec                	mov    %esp,%ebp
8639c2:	56                   	push   %esi
8639c3:	ff 75 08             	push   0x8(%ebp)
8639c6:	8b f1                	mov    %ecx,%esi
8639c8:	ff 15 74 31 d8 00    	call   *0xd83174
8639ce:	50                   	push   %eax
8639cf:	8b ce                	mov    %esi,%ecx
8639d1:	e8 9c 2b bb ff       	call   0x416572
8639d6:	5e                   	pop    %esi
8639d7:	5d                   	pop    %ebp
8639d8:	c2 04 00             	ret    $0x4
8639db:	cc                   	int3
8639dc:	cc                   	int3
8639dd:	cc                   	int3
8639de:	cc                   	int3
8639df:	cc                   	int3
8639e0:	cc                   	int3
8639e1:	cc                   	int3
8639e2:	55                   	push   %ebp
8639e3:	8b ec                	mov    %esp,%ebp
8639e5:	6a 00                	push   $0x0
8639e7:	ff 75 08             	push   0x8(%ebp)
8639ea:	68 44 01 00 00       	push   $0x144
8639ef:	ff 71 20             	push   0x20(%ecx)
8639f2:	ff 15 20 40 d8 00    	call   *0xd84020
8639f8:	5d                   	pop    %ebp
8639f9:	c2 04 00             	ret    $0x4
8639fc:	cc                   	int3
8639fd:	cc                   	int3
8639fe:	cc                   	int3
8639ff:	cc                   	int3
863a00:	cc                   	int3
863a01:	cc                   	int3
863a02:	55                   	push   %ebp
863a03:	8b ec                	mov    %esp,%ebp
863a05:	56                   	push   %esi
863a06:	57                   	push   %edi
863a07:	6a 00                	push   $0x0
863a09:	ff 75 08             	push   0x8(%ebp)
863a0c:	8b f9                	mov    %ecx,%edi
863a0e:	be 50 01 00 00       	mov    $0x150,%esi
863a13:	56                   	push   %esi
863a14:	ff 77 20             	push   0x20(%edi)
863a17:	ff 15 20 40 d8 00    	call   *0xd84020
863a1d:	85 c0                	test   %eax,%eax
863a1f:	74 29                	je     0x863a4a
863a21:	53                   	push   %ebx
863a22:	6a 00                	push   $0x0
863a24:	ff 75 08             	push   0x8(%ebp)
863a27:	56                   	push   %esi
863a28:	ff 77 20             	push   0x20(%edi)
863a2b:	ff 15 20 40 d8 00    	call   *0xd84020
863a31:	8b d8                	mov    %eax,%ebx
863a33:	85 db                	test   %ebx,%ebx
863a35:	74 12                	je     0x863a49
863a37:	8b 0b                	mov    (%ebx),%ecx
863a39:	6a 01                	push   $0x1
863a3b:	8b 71 04             	mov    0x4(%ecx),%esi
863a3e:	8b ce                	mov    %esi,%ecx
863a40:	e8 20 8c bc ff       	call   0x42c665
863a45:	8b cb                	mov    %ebx,%ecx
863a47:	ff d6                	call   *%esi
863a49:	5b                   	pop    %ebx
863a4a:	6a 00                	push   $0x0
863a4c:	ff 75 08             	push   0x8(%ebp)
863a4f:	68 44 01 00 00       	push   $0x144
863a54:	ff 77 20             	push   0x20(%edi)
863a57:	ff 15 20 40 d8 00    	call   *0xd84020
863a5d:	5f                   	pop    %edi
863a5e:	5e                   	pop    %esi
863a5f:	5d                   	pop    %ebp
863a60:	c2 04 00             	ret    $0x4
863a63:	cc                   	int3
863a64:	cc                   	int3
863a65:	cc                   	int3
863a66:	cc                   	int3
863a67:	cc                   	int3
863a68:	cc                   	int3
863a69:	cc                   	int3
863a6a:	cc                   	int3
863a6b:	cc                   	int3
863a6c:	cc                   	int3
863a6d:	cc                   	int3
863a6e:	cc                   	int3
863a6f:	cc                   	int3
863a70:	cc                   	int3
863a71:	cc                   	int3
863a72:	cc                   	int3
863a73:	cc                   	int3
863a74:	cc                   	int3
863a75:	cc                   	int3
863a76:	cc                   	int3
863a77:	cc                   	int3
863a78:	cc                   	int3
863a79:	cc                   	int3
863a7a:	cc                   	int3
863a7b:	68 90 00 00 00       	push   $0x90
863a80:	b8 8e cd b9 00       	mov    $0xb9cd8e,%eax
863a85:	e8 db e5 bc ff       	call   0x432065
863a8a:	8b c1                	mov    %ecx,%eax
863a8c:	89 45 80             	mov    %eax,-0x80(%ebp)
863a8f:	8b 5d 08             	mov    0x8(%ebp),%ebx
863a92:	05 80 00 00 00       	add    $0x80,%eax
863a97:	74 06                	je     0x863a9f
863a99:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
863a9d:	75 15                	jne    0x863ab4
863a9f:	68 ff ff ff 00       	push   $0xffffff
863aa4:	6a 00                	push   $0x0
863aa6:	6a 10                	push   $0x10
863aa8:	68 68 42 00 00       	push   $0x4268
863aad:	8b c8                	mov    %eax,%ecx
863aaf:	e8 54 6b bc ff       	call   0x42a608
863ab4:	ff 73 18             	push   0x18(%ebx)
863ab7:	e8 35 45 bd ff       	call   0x437ff1
863abc:	8d 4b 1c             	lea    0x1c(%ebx),%ecx
863abf:	8b f8                	mov    %eax,%edi
863ac1:	51                   	push   %ecx
863ac2:	8d 45 e0             	lea    -0x20(%ebp),%eax
863ac5:	50                   	push   %eax
863ac6:	ff 15 00 3d d8 00    	call   *0xd83d00
863acc:	f6 43 10 10          	testb  $0x10,0x10(%ebx)
863ad0:	74 0d                	je     0x863adf
863ad2:	8d 45 e0             	lea    -0x20(%ebp),%eax
863ad5:	50                   	push   %eax
863ad6:	ff 77 04             	push   0x4(%edi)
863ad9:	ff 15 2c 3e d8 00    	call   *0xd83e2c
863adf:	8b 07                	mov    (%edi),%eax
863ae1:	8b 70 1c             	mov    0x1c(%eax),%esi
863ae4:	8b ce                	mov    %esi,%ecx
863ae6:	e8 7a 8b bc ff       	call   0x42c665
863aeb:	8b cf                	mov    %edi,%ecx
863aed:	ff d6                	call   *%esi
863aef:	83 a5 7c ff ff ff 00 	andl   $0x0,-0x84(%ebp)
863af6:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
863afc:	c7 85 78 ff ff ff dc 	movl   $0xc3a7dc,-0x88(%ebp)
863b03:	a7 c3 00
863b06:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
863b0a:	f6 43 10 01          	testb  $0x1,0x10(%ebx)
863b0e:	74 34                	je     0x863b44
863b10:	e8 21 48 bb ff       	call   0x418336
863b15:	8b 40 3c             	mov    0x3c(%eax),%eax
863b18:	50                   	push   %eax
863b19:	ff 15 74 31 d8 00    	call   *0xd83174
863b1f:	50                   	push   %eax
863b20:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
863b26:	e8 47 2a bb ff       	call   0x416572
863b2b:	8b 37                	mov    (%edi),%esi
863b2d:	e8 04 48 bb ff       	call   0x418336
863b32:	8b 4e 30             	mov    0x30(%esi),%ecx
863b35:	ff 70 40             	push   0x40(%eax)
863b38:	e8 28 8b bc ff       	call   0x42c665
863b3d:	8b cf                	mov    %edi,%ecx
863b3f:	ff 56 30             	call   *0x30(%esi)
863b42:	eb 1c                	jmp    0x863b60
863b44:	ff 77 08             	push   0x8(%edi)
863b47:	ff 15 68 33 d8 00    	call   *0xd83368
863b4d:	50                   	push   %eax
863b4e:	ff 15 74 31 d8 00    	call   *0xd83174
863b54:	50                   	push   %eax
863b55:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
863b5b:	e8 12 2a bb ff       	call   0x416572
863b60:	6a 01                	push   $0x1
863b62:	8b cf                	mov    %edi,%ecx
863b64:	e8 7f f8 bc ff       	call   0x4333e8
863b69:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
863b6f:	8d 45 e0             	lea    -0x20(%ebp),%eax
863b72:	50                   	push   %eax
863b73:	ff 77 04             	push   0x4(%edi)
863b76:	ff 15 c8 3d d8 00    	call   *0xd83dc8
863b7c:	8b 43 08             	mov    0x8(%ebx),%eax
863b7f:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
863b85:	85 c0                	test   %eax,%eax
863b87:	0f 88 61 01 00 00    	js     0x863cee
863b8d:	83 a5 70 ff ff ff 00 	andl   $0x0,-0x90(%ebp)
863b94:	c7 85 6c ff ff ff 1c 	movl   $0xbd581c,-0x94(%ebp)
863b9b:	58 bd 00
863b9e:	8b 73 2c             	mov    0x2c(%ebx),%esi
863ba1:	83 a5 74 ff ff ff 00 	andl   $0x0,-0x8c(%ebp)
863ba8:	8b 5d 80             	mov    -0x80(%ebp),%ebx
863bab:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
863baf:	85 f6                	test   %esi,%esi
863bb1:	0f 84 b9 00 00 00    	je     0x863c70
863bb7:	8b 4e 10             	mov    0x10(%esi),%ecx
863bba:	f6 c1 06             	test   $0x6,%cl
863bbd:	74 2b                	je     0x863bea
863bbf:	8b 45 ec             	mov    -0x14(%ebp),%eax
863bc2:	2b 45 e4             	sub    -0x1c(%ebp),%eax
863bc5:	83 e8 10             	sub    $0x10,%eax
863bc8:	d1 e9                	shr    $1,%ecx
863bca:	99                   	cltd
863bcb:	f7 d1                	not    %ecx
863bcd:	2b c2                	sub    %edx,%eax
863bcf:	83 e1 01             	and    $0x1,%ecx
863bd2:	6a 00                	push   $0x0
863bd4:	d1 f8                	sar    $1,%eax
863bd6:	03 45 e4             	add    -0x1c(%ebp),%eax
863bd9:	50                   	push   %eax
863bda:	ff 75 e0             	push   -0x20(%ebp)
863bdd:	51                   	push   %ecx
863bde:	57                   	push   %edi
863bdf:	8d 8b 80 00 00 00    	lea    0x80(%ebx),%ecx
863be5:	e8 68 7b bb ff       	call   0x41b752
863bea:	83 45 e0 16          	addl   $0x16,-0x20(%ebp)
863bee:	83 3d 94 cc d7 00 00 	cmpl   $0x0,0xd7cc94
863bf5:	74 79                	je     0x863c70
863bf7:	80 7e 0c 02          	cmpb   $0x2,0xc(%esi)
863bfb:	74 73                	je     0x863c70
863bfd:	e8 34 47 bb ff       	call   0x418336
863c02:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
863c05:	51                   	push   %ecx
863c06:	6a 5c                	push   $0x5c
863c08:	ff b0 20 01 00 00    	push   0x120(%eax)
863c0e:	ff 15 44 32 d8 00    	call   *0xd83244
863c14:	ff 76 04             	push   0x4(%esi)
863c17:	8d 45 a0             	lea    -0x60(%ebp),%eax
863c1a:	50                   	push   %eax
863c1b:	ff 15 d4 37 d8 00    	call   *0xd837d4
863c21:	8a 46 0c             	mov    0xc(%esi),%al
863c24:	3c 01                	cmp    $0x1,%al
863c26:	74 03                	je     0x863c2b
863c28:	88 45 9b             	mov    %al,-0x65(%ebp)
863c2b:	8b 45 84             	mov    -0x7c(%ebp),%eax
863c2e:	85 c0                	test   %eax,%eax
863c30:	79 05                	jns    0x863c37
863c32:	83 e8 04             	sub    $0x4,%eax
863c35:	eb 03                	jmp    0x863c3a
863c37:	83 c0 04             	add    $0x4,%eax
863c3a:	89 45 84             	mov    %eax,-0x7c(%ebp)
863c3d:	8d 45 84             	lea    -0x7c(%ebp),%eax
863c40:	50                   	push   %eax
863c41:	ff 15 34 33 d8 00    	call   *0xd83334
863c47:	50                   	push   %eax
863c48:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
863c4e:	e8 1f 29 bb ff       	call   0x416572
863c53:	8b 07                	mov    (%edi),%eax
863c55:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
863c5b:	51                   	push   %ecx
863c5c:	8b 70 28             	mov    0x28(%eax),%esi
863c5f:	8b ce                	mov    %esi,%ecx
863c61:	e8 ff 89 bc ff       	call   0x42c665
863c66:	8b cf                	mov    %edi,%ecx
863c68:	ff d6                	call   *%esi
863c6a:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
863c70:	e8 a0 29 bd ff       	call   0x436615
863c75:	50                   	push   %eax
863c76:	8d 4d 80             	lea    -0x80(%ebp),%ecx
863c79:	e8 96 5f ba ff       	call   0x409c14
863c7e:	8d 45 80             	lea    -0x80(%ebp),%eax
863c81:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
863c85:	50                   	push   %eax
863c86:	ff b5 68 ff ff ff    	push   -0x98(%ebp)
863c8c:	8b cb                	mov    %ebx,%ecx
863c8e:	e8 66 b5 bb ff       	call   0x41f1f9
863c93:	8b 45 80             	mov    -0x80(%ebp),%eax
863c96:	8d 4d e0             	lea    -0x20(%ebp),%ecx
863c99:	8b 37                	mov    (%edi),%esi
863c9b:	6a 24                	push   $0x24
863c9d:	51                   	push   %ecx
863c9e:	ff 70 f4             	push   -0xc(%eax)
863ca1:	8b 4e 68             	mov    0x68(%esi),%ecx
863ca4:	50                   	push   %eax
863ca5:	e8 bb 89 bc ff       	call   0x42c665
863caa:	8b cf                	mov    %edi,%ecx
863cac:	ff 56 68             	call   *0x68(%esi)
863caf:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
863cb5:	85 c9                	test   %ecx,%ecx
863cb7:	74 11                	je     0x863cca
863cb9:	8b 07                	mov    (%edi),%eax
863cbb:	51                   	push   %ecx
863cbc:	8b 70 28             	mov    0x28(%eax),%esi
863cbf:	8b ce                	mov    %esi,%ecx
863cc1:	e8 9f 89 bc ff       	call   0x42c665
863cc6:	8b cf                	mov    %edi,%ecx
863cc8:	ff d6                	call   *%esi
863cca:	8b 4d 80             	mov    -0x80(%ebp),%ecx
863ccd:	8d 49 f0             	lea    -0x10(%ecx),%ecx
863cd0:	e8 3f 0f ba ff       	call   0x404c14
863cd5:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx