9777d3:	56                   	push   %esi
9777d4:	ff 75 0c             	push   0xc(%ebp)
9777d7:	8b f1                	mov    %ecx,%esi
9777d9:	ff 75 08             	push   0x8(%ebp)
9777dc:	e8 9d 68 aa ff       	call   0x41e07e
9777e1:	8b ce                	mov    %esi,%ecx
9777e3:	e8 ec cf ab ff       	call   0x4347d4
9777e8:	6a 01                	push   $0x1
9777ea:	6a 00                	push   $0x0
9777ec:	ff 76 20             	push   0x20(%esi)
9777ef:	ff 15 e8 3d d8 00    	call   *0xd83de8
9777f5:	ff 76 20             	push   0x20(%esi)
9777f8:	ff 15 8c 3f d8 00    	call   *0xd83f8c
9777fe:	5e                   	pop    %esi
9777ff:	5d                   	pop    %ebp
977800:	c2 08 00             	ret    $0x8
977803:	cc                   	int3
977804:	cc                   	int3
977805:	cc                   	int3
977806:	cc                   	int3
977807:	cc                   	int3
977808:	cc                   	int3
977809:	cc                   	int3
97780a:	cc                   	int3
97780b:	cc                   	int3
97780c:	cc                   	int3
97780d:	cc                   	int3
97780e:	cc                   	int3
97780f:	55                   	push   %ebp
977810:	8b ec                	mov    %esp,%ebp
977812:	51                   	push   %ecx
977813:	51                   	push   %ecx
977814:	53                   	push   %ebx
977815:	bb 12 ec 00 00       	mov    $0xec12,%ebx
97781a:	56                   	push   %esi
97781b:	8b f1                	mov    %ecx,%esi
97781d:	39 5d 08             	cmp    %ebx,0x8(%ebp)
977820:	75 70                	jne    0x977892
977822:	57                   	push   %edi
977823:	8d 45 f8             	lea    -0x8(%ebp),%eax
977826:	33 ff                	xor    %edi,%edi
977828:	50                   	push   %eax
977829:	89 7d f8             	mov    %edi,-0x8(%ebp)
97782c:	89 7d fc             	mov    %edi,-0x4(%ebp)
97782f:	ff 15 8c 40 d8 00    	call   *0xd8408c
977835:	8d 45 f8             	lea    -0x8(%ebp),%eax
977838:	50                   	push   %eax
977839:	ff 76 20             	push   0x20(%esi)
97783c:	ff 15 f4 3c d8 00    	call   *0xd83cf4
977842:	57                   	push   %edi
977843:	8b ce                	mov    %esi,%ecx
977845:	e8 77 f4 a8 ff       	call   0x406cc1
97784a:	8b f8                	mov    %eax,%edi
97784c:	85 ff                	test   %edi,%edi
97784e:	74 37                	je     0x977887
977850:	83 bf 8c 00 00 00 00 	cmpl   $0x0,0x8c(%edi)
977857:	74 2e                	je     0x977887
977859:	ff 75 fc             	push   -0x4(%ebp)
97785c:	8d 47 54             	lea    0x54(%edi),%eax
97785f:	ff 75 f8             	push   -0x8(%ebp)
977862:	50                   	push   %eax
977863:	ff 15 08 3d d8 00    	call   *0xd83d08
977869:	85 c0                	test   %eax,%eax
97786b:	74 1a                	je     0x977887
97786d:	8b 8f 8c 00 00 00    	mov    0x8c(%edi),%ecx
977873:	e8 52 25 ab ff       	call   0x429dca
977878:	85 c0                	test   %eax,%eax
97787a:	75 0b                	jne    0x977887
97787c:	8b 8f 8c 00 00 00    	mov    0x8c(%edi),%ecx
977882:	e8 8c 7d aa ff       	call   0x41f613
977887:	53                   	push   %ebx
977888:	ff 76 20             	push   0x20(%esi)
97788b:	ff 15 14 3e d8 00    	call   *0xd83e14
977891:	5f                   	pop    %edi
977892:	8b ce                	mov    %esi,%ecx
977894:	e8 c7 a7 ab ff       	call   0x432060
977899:	5e                   	pop    %esi
97789a:	5b                   	pop    %ebx
97789b:	8b e5                	mov    %ebp,%esp
97789d:	5d                   	pop    %ebp
97789e:	c2 04 00             	ret    $0x4
9778a1:	cc                   	int3
9778a2:	cc                   	int3
9778a3:	cc                   	int3
9778a4:	cc                   	int3
9778a5:	cc                   	int3
9778a6:	cc                   	int3
9778a7:	cc                   	int3
9778a8:	cc                   	int3
9778a9:	cc                   	int3
9778aa:	cc                   	int3
9778ab:	cc                   	int3
9778ac:	cc                   	int3
9778ad:	cc                   	int3
9778ae:	cc                   	int3
9778af:	cc                   	int3
9778b0:	cc                   	int3
9778b1:	cc                   	int3
9778b2:	cc                   	int3
9778b3:	cc                   	int3
9778b4:	cc                   	int3
9778b5:	cc                   	int3
9778b6:	cc                   	int3
9778b7:	cc                   	int3
9778b8:	cc                   	int3
9778b9:	cc                   	int3
9778ba:	cc                   	int3
9778bb:	cc                   	int3
9778bc:	cc                   	int3
9778bd:	cc                   	int3
9778be:	cc                   	int3
9778bf:	cc                   	int3
9778c0:	cc                   	int3
9778c1:	cc                   	int3
9778c2:	cc                   	int3
9778c3:	cc                   	int3
9778c4:	cc                   	int3
9778c5:	55                   	push   %ebp
9778c6:	8b ec                	mov    %esp,%ebp
9778c8:	56                   	push   %esi
9778c9:	57                   	push   %edi
9778ca:	ff 75 0c             	push   0xc(%ebp)
9778cd:	8b f9                	mov    %ecx,%edi
9778cf:	ff 75 08             	push   0x8(%ebp)
9778d2:	8b 07                	mov    (%edi),%eax
9778d4:	8b b0 90 03 00 00    	mov    0x390(%eax),%esi
9778da:	8b ce                	mov    %esi,%ecx
9778dc:	e8 84 4d ab ff       	call   0x42c665
9778e1:	8b cf                	mov    %edi,%ecx
9778e3:	ff d6                	call   *%esi
9778e5:	83 f8 ff             	cmp    $0xffffffff,%eax
9778e8:	74 21                	je     0x97790b
9778ea:	50                   	push   %eax
9778eb:	8b cf                	mov    %edi,%ecx
9778ed:	e8 49 c5 a8 ff       	call   0x403e3b
9778f2:	85 c0                	test   %eax,%eax
9778f4:	74 10                	je     0x977906
9778f6:	68 b4 ee d5 00       	push   $0xd5eeb4
9778fb:	8b c8                	mov    %eax,%ecx
9778fd:	e8 8d 23 ab ff       	call   0x429c8f
977902:	85 c0                	test   %eax,%eax
977904:	74 05                	je     0x97790b
977906:	83 c8 ff             	or     $0xffffffff,%eax
977909:	eb 10                	jmp    0x97791b
97790b:	ff 75 10             	push   0x10(%ebp)
97790e:	8b cf                	mov    %edi,%ecx
977910:	ff 75 0c             	push   0xc(%ebp)
977913:	ff 75 08             	push   0x8(%ebp)
977916:	e8 14 c9 ab ff       	call   0x43422f
97791b:	5f                   	pop    %edi
97791c:	5e                   	pop    %esi
97791d:	5d                   	pop    %ebp
97791e:	c2 0c 00             	ret    $0xc
977921:	cc                   	int3
977922:	cc                   	int3
977923:	cc                   	int3
977924:	cc                   	int3
977925:	cc                   	int3
977926:	cc                   	int3
977927:	cc                   	int3
977928:	cc                   	int3
977929:	cc                   	int3
97792a:	cc                   	int3
97792b:	cc                   	int3
97792c:	cc                   	int3
97792d:	cc                   	int3
97792e:	cc                   	int3
97792f:	cc                   	int3
977930:	cc                   	int3
977931:	cc                   	int3
977932:	cc                   	int3
977933:	cc                   	int3
977934:	cc                   	int3
977935:	cc                   	int3
977936:	cc                   	int3
977937:	cc                   	int3
977938:	55                   	push   %ebp
977939:	8b ec                	mov    %esp,%ebp
97793b:	51                   	push   %ecx
97793c:	53                   	push   %ebx
97793d:	56                   	push   %esi
97793e:	8b 75 08             	mov    0x8(%ebp),%esi
977941:	57                   	push   %edi
977942:	8b f9                	mov    %ecx,%edi
977944:	81 7e 04 00 01 00 00 	cmpl   $0x100,0x4(%esi)
97794b:	0f 85 cd 00 00 00    	jne    0x977a1e
977951:	6a 00                	push   $0x0
977953:	e8 69 f3 a8 ff       	call   0x406cc1
977958:	8b cf                	mov    %edi,%ecx
97795a:	85 c0                	test   %eax,%eax
97795c:	74 0b                	je     0x977969
97795e:	56                   	push   %esi
97795f:	e8 b9 d5 ab ff       	call   0x434f1d
977964:	e9 bd 00 00 00       	jmp    0x977a26
977969:	e8 6b ab ab ff       	call   0x4324d9
97796e:	83 bf 70 0d 00 00 00 	cmpl   $0x0,0xd70(%edi)
977975:	8b d8                	mov    %eax,%ebx
977977:	74 06                	je     0x97797f
977979:	2b 9f 64 0d 00 00    	sub    0xd64(%edi),%ebx
97797f:	8b 87 f0 0b 00 00    	mov    0xbf0(%edi),%eax
977985:	89 45 fc             	mov    %eax,-0x4(%ebp)
977988:	85 c0                	test   %eax,%eax
97798a:	0f 88 8e 00 00 00    	js     0x977a1e
977990:	3b c3                	cmp    %ebx,%eax
977992:	0f 8d 86 00 00 00    	jge    0x977a1e
977998:	8b c6                	mov    %esi,%eax
97799a:	8b 70 08             	mov    0x8(%eax),%esi
97799d:	83 fe 09             	cmp    $0x9,%esi
9779a0:	75 17                	jne    0x9779b9
9779a2:	6a 10                	push   $0x10
9779a4:	ff 15 38 40 d8 00    	call   *0xd84038
9779aa:	0f b6 f0             	movzbl %al,%esi
9779ad:	81 f6 80 00 00 00    	xor    $0x80,%esi
9779b3:	c1 ee 06             	shr    $0x6,%esi
9779b6:	83 ce 25             	or     $0x25,%esi
9779b9:	8b cf                	mov    %edi,%ecx
9779bb:	e8 8c 2b a9 ff       	call   0x40a54c
9779c0:	a9 00 00 40 00       	test   $0x400000,%eax
9779c5:	74 11                	je     0x9779d8
9779c7:	83 fe 25             	cmp    $0x25,%esi
9779ca:	75 04                	jne    0x9779d0
9779cc:	6a 27                	push   $0x27
9779ce:	eb 07                	jmp    0x9779d7
9779d0:	83 fe 27             	cmp    $0x27,%esi
9779d3:	75 03                	jne    0x9779d8
9779d5:	6a 25                	push   $0x25
9779d7:	5e                   	pop    %esi
9779d8:	83 ee 0d             	sub    $0xd,%esi
9779db:	0f 84 fe 00 00 00    	je     0x977adf
9779e1:	83 ee 0e             	sub    $0xe,%esi
9779e4:	0f 84 c3 00 00 00    	je     0x977aad
9779ea:	83 ee 0a             	sub    $0xa,%esi
9779ed:	0f 84 a6 00 00 00    	je     0x977a99
9779f3:	4e                   	dec    %esi
9779f4:	83 ee 01             	sub    $0x1,%esi
9779f7:	74 50                	je     0x977a49
9779f9:	83 ee 01             	sub    $0x1,%esi
9779fc:	74 31                	je     0x977a2f
9779fe:	8b 07                	mov    (%edi),%eax
977a00:	8b 4d 08             	mov    0x8(%ebp),%ecx
977a03:	8b b0 94 03 00 00    	mov    0x394(%eax),%esi
977a09:	ff 71 08             	push   0x8(%ecx)
977a0c:	8b ce                	mov    %esi,%ecx
977a0e:	e8 52 4c ab ff       	call   0x42c665
977a13:	8b cf                	mov    %edi,%ecx
977a15:	ff d6                	call   *%esi
977a17:	85 c0                	test   %eax,%eax
977a19:	75 29                	jne    0x977a44
977a1b:	8b 75 08             	mov    0x8(%ebp),%esi
977a1e:	56                   	push   %esi
977a1f:	8b cf                	mov    %edi,%ecx
977a21:	e8 c8 d7 aa ff       	call   0x4251ee
977a26:	5f                   	pop    %edi
977a27:	5e                   	pop    %esi
977a28:	5b                   	pop    %ebx
977a29:	8b e5                	mov    %ebp,%esp
977a2b:	5d                   	pop    %ebp
977a2c:	c2 04 00             	ret    $0x4
977a2f:	ff b7 f0 0b 00 00    	push   0xbf0(%edi)
977a35:	8b cf                	mov    %edi,%ecx
977a37:	e8 ff c3 a8 ff       	call   0x403e3b
977a3c:	50                   	push   %eax
977a3d:	8b cf                	mov    %edi,%ecx
977a3f:	e8 d7 e7 a9 ff       	call   0x41621b
977a44:	33 c0                	xor    %eax,%eax
977a46:	40                   	inc    %eax
977a47:	eb dd                	jmp    0x977a26
977a49:	ff 87 f0 0b 00 00    	incl   0xbf0(%edi)
977a4f:	39 9f f0 0b 00 00    	cmp    %ebx,0xbf0(%edi)
977a55:	7c 07                	jl     0x977a5e
977a57:	83 a7 f0 0b 00 00 00 	andl   $0x0,0xbf0(%edi)
977a5e:	ff 75 fc             	push   -0x4(%ebp)
977a61:	8b cf                	mov    %edi,%ecx
977a63:	e8 8d ef a9 ff       	call   0x4169f5
977a68:	ff b7 f0 0b 00 00    	push   0xbf0(%edi)
977a6e:	8b cf                	mov    %edi,%ecx
977a70:	e8 80 ef a9 ff       	call   0x4169f5
977a75:	ff 77 20             	push   0x20(%edi)
977a78:	ff 15 8c 3f d8 00    	call   *0xd83f8c
977a7e:	8b 07                	mov    (%edi),%eax
977a80:	ff b7 f0 0b 00 00    	push   0xbf0(%edi)
977a86:	8b b0 5c 02 00 00    	mov    0x25c(%eax),%esi
977a8c:	8b ce                	mov    %esi,%ecx
977a8e:	e8 d2 4b ab ff       	call   0x42c665
977a93:	8b cf                	mov    %edi,%ecx
977a95:	ff d6                	call   *%esi
977a97:	eb 82                	jmp    0x977a1b
977a99:	83 af f0 0b 00 00 01 	subl   $0x1,0xbf0(%edi)
977aa0:	79 bc                	jns    0x977a5e
977aa2:	8d 43 ff             	lea    -0x1(%ebx),%eax
977aa5:	89 87 f0 0b 00 00    	mov    %eax,0xbf0(%edi)
977aab:	eb b1                	jmp    0x977a5e
977aad:	8b 07                	mov    (%edi),%eax
977aaf:	8b b0 60 03 00 00    	mov    0x360(%eax),%esi
977ab5:	8b ce                	mov    %esi,%ecx
977ab7:	e8 a9 4b ab ff       	call   0x42c665
977abc:	8b cf                	mov    %edi,%ecx
977abe:	ff d6                	call   *%esi
977ac0:	8b 07                	mov    (%edi),%eax
977ac2:	8b b0 64 03 00 00    	mov    0x364(%eax),%esi
977ac8:	8b ce                	mov    %esi,%ecx
977aca:	e8 96 4b ab ff       	call   0x42c665
977acf:	8b cf                	mov    %edi,%ecx
977ad1:	ff d6                	call   *%esi
977ad3:	83 25 08 fa d7 00 00 	andl   $0x0,0xd7fa08
977ada:	e9 3c ff ff ff       	jmp    0x977a1b
977adf:	ff b7 f0 0b 00 00    	push   0xbf0(%edi)
977ae5:	8b cf                	mov    %edi,%ecx
977ae7:	e8 4f c3 a8 ff       	call   0x403e3b
977aec:	50                   	push   %eax
977aed:	8b cf                	mov    %edi,%ecx
977aef:	e8 27 e7 a9 ff       	call   0x41621b
977af4:	85 c0                	test   %eax,%eax
977af6:	0f 85 48 ff ff ff    	jne    0x977a44
977afc:	ff b7 f0 0b 00 00    	push   0xbf0(%edi)
977b02:	8b cf                	mov    %edi,%ecx
977b04:	e8 32 c3 a8 ff       	call   0x403e3b
977b09:	50                   	push   %eax
977b0a:	8b cf                	mov    %edi,%ecx
977b0c:	e8 1f 67 ab ff       	call   0x42e230
977b11:	e9 2e ff ff ff       	jmp    0x977a44
977b16:	cc                   	int3
977b17:	cc                   	int3
977b18:	cc                   	int3
977b19:	cc                   	int3
977b1a:	cc                   	int3
977b1b:	cc                   	int3
977b1c:	cc                   	int3
977b1d:	cc                   	int3
977b1e:	cc                   	int3
977b1f:	cc                   	int3
977b20:	cc                   	int3
977b21:	cc                   	int3
977b22:	cc                   	int3
977b23:	cc                   	int3
977b24:	cc                   	int3
977b25:	cc                   	int3
977b26:	cc                   	int3
977b27:	cc                   	int3
977b28:	cc                   	int3
977b29:	cc                   	int3
977b2a:	cc                   	int3
977b2b:	cc                   	int3
977b2c:	cc                   	int3
977b2d:	cc                   	int3
977b2e:	cc                   	int3
977b2f:	cc                   	int3
977b30:	cc                   	int3
977b31:	cc                   	int3
977b32:	cc                   	int3