52f7b0:	51                   	push   %ecx
52f7b1:	c6 04 24 00          	movb   $0x0,(%esp)
52f7b5:	ff 34 24             	push   (%esp)
52f7b8:	ff 74 24 14          	push   0x14(%esp)
52f7bc:	ff 74 24 14          	push   0x14(%esp)
52f7c0:	ff 74 24 14          	push   0x14(%esp)
52f7c4:	e8 56 92 ef ff       	call   0x428a1f
52f7c9:	83 c4 14             	add    $0x14,%esp
52f7cc:	c3                   	ret
52f7cd:	cc                   	int3
52f7ce:	cc                   	int3
52f7cf:	cc                   	int3
52f7d0:	cc                   	int3
52f7d1:	cc                   	int3
52f7d2:	cc                   	int3
52f7d3:	cc                   	int3
52f7d4:	cc                   	int3
52f7d5:	cc                   	int3
52f7d6:	cc                   	int3
52f7d7:	cc                   	int3
52f7d8:	cc                   	int3
52f7d9:	cc                   	int3
52f7da:	cc                   	int3
52f7db:	cc                   	int3
52f7dc:	cc                   	int3
52f7dd:	cc                   	int3
52f7de:	cc                   	int3
52f7df:	cc                   	int3
52f7e0:	8b 44 24 04          	mov    0x4(%esp),%eax
52f7e4:	8b 4c 24 08          	mov    0x8(%esp),%ecx
52f7e8:	2b c8                	sub    %eax,%ecx
52f7ea:	51                   	push   %ecx
52f7eb:	50                   	push   %eax
52f7ec:	8b 44 24 14          	mov    0x14(%esp),%eax
52f7f0:	2b c1                	sub    %ecx,%eax
52f7f2:	50                   	push   %eax
52f7f3:	e8 8a f3 ee ff       	call   0x41eb82
52f7f8:	83 c4 0c             	add    $0xc,%esp
52f7fb:	c3                   	ret
52f7fc:	cc                   	int3
52f7fd:	cc                   	int3
52f7fe:	cc                   	int3
52f7ff:	cc                   	int3
52f800:	cc                   	int3
52f801:	cc                   	int3
52f802:	cc                   	int3
52f803:	cc                   	int3
52f804:	cc                   	int3
52f805:	cc                   	int3
52f806:	cc                   	int3
52f807:	cc                   	int3
52f808:	cc                   	int3
52f809:	cc                   	int3
52f80a:	cc                   	int3
52f80b:	cc                   	int3
52f80c:	cc                   	int3
52f80d:	cc                   	int3
52f80e:	cc                   	int3
52f80f:	cc                   	int3
52f810:	51                   	push   %ecx
52f811:	c6 04 24 00          	movb   $0x0,(%esp)
52f815:	ff 34 24             	push   (%esp)
52f818:	ff 74 24 14          	push   0x14(%esp)
52f81c:	ff 74 24 14          	push   0x14(%esp)
52f820:	ff 74 24 14          	push   0x14(%esp)
52f824:	e8 3e 45 ef ff       	call   0x423d67
52f829:	83 c4 14             	add    $0x14,%esp
52f82c:	c3                   	ret
52f82d:	cc                   	int3
52f82e:	cc                   	int3
52f82f:	cc                   	int3
52f830:	cc                   	int3
52f831:	cc                   	int3
52f832:	cc                   	int3
52f833:	cc                   	int3
52f834:	cc                   	int3
52f835:	cc                   	int3
52f836:	cc                   	int3
52f837:	cc                   	int3
52f838:	cc                   	int3
52f839:	cc                   	int3
52f83a:	cc                   	int3
52f83b:	cc                   	int3
52f83c:	cc                   	int3
52f83d:	cc                   	int3
52f83e:	cc                   	int3
52f83f:	cc                   	int3
52f840:	83 ec 48             	sub    $0x48,%esp
52f843:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
52f848:	33 c4                	xor    %esp,%eax
52f84a:	89 44 24 44          	mov    %eax,0x44(%esp)
52f84e:	8b 44 24 4c          	mov    0x4c(%esp),%eax
52f852:	53                   	push   %ebx
52f853:	8b 5c 24 54          	mov    0x54(%esp),%ebx
52f857:	55                   	push   %ebp
52f858:	56                   	push   %esi
52f859:	8b 74 24 60          	mov    0x60(%esp),%esi
52f85d:	8b ce                	mov    %esi,%ecx
52f85f:	89 44 24 1c          	mov    %eax,0x1c(%esp)
52f863:	2b cb                	sub    %ebx,%ecx
52f865:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
52f86a:	89 5c 24 14          	mov    %ebx,0x14(%esp)
52f86e:	f7 e9                	imul   %ecx
52f870:	57                   	push   %edi
52f871:	ff 74 24 68          	push   0x68(%esp)
52f875:	c1 fa 04             	sar    $0x4,%edx
52f878:	8b c2                	mov    %edx,%eax
52f87a:	89 74 24 18          	mov    %esi,0x18(%esp)
52f87e:	c1 e8 1f             	shr    $0x1f,%eax
52f881:	03 c2                	add    %edx,%eax
52f883:	8d 3c 40             	lea    (%eax,%eax,2),%edi
52f886:	8d 46 d0             	lea    -0x30(%esi),%eax
52f889:	c1 e7 04             	shl    $0x4,%edi
52f88c:	50                   	push   %eax
52f88d:	03 fb                	add    %ebx,%edi
52f88f:	57                   	push   %edi
52f890:	53                   	push   %ebx
52f891:	e8 9b 7a ef ff       	call   0x427331
52f896:	83 c4 10             	add    $0x10,%esp
52f899:	8d 6f 30             	lea    0x30(%edi),%ebp
52f89c:	3b df                	cmp    %edi,%ebx
52f89e:	73 5d                	jae    0x52f8fd
52f8a0:	8d 77 d0             	lea    -0x30(%edi),%esi
52f8a3:	83 7e 44 10          	cmpl   $0x10,0x44(%esi)
52f8a7:	72 04                	jb     0x52f8ad
52f8a9:	8b 07                	mov    (%edi),%eax
52f8ab:	eb 02                	jmp    0x52f8af
52f8ad:	8b c7                	mov    %edi,%eax
52f8af:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
52f8b3:	72 04                	jb     0x52f8b9
52f8b5:	8b 0e                	mov    (%esi),%ecx
52f8b7:	eb 02                	jmp    0x52f8bb
52f8b9:	8b ce                	mov    %esi,%ecx
52f8bb:	50                   	push   %eax
52f8bc:	51                   	push   %ecx
52f8bd:	e8 19 3c ed ff       	call   0x4034db
52f8c2:	83 c4 08             	add    $0x8,%esp
52f8c5:	85 c0                	test   %eax,%eax
52f8c7:	78 30                	js     0x52f8f9
52f8c9:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
52f8cd:	72 04                	jb     0x52f8d3
52f8cf:	8b 0e                	mov    (%esi),%ecx
52f8d1:	eb 02                	jmp    0x52f8d5
52f8d3:	8b ce                	mov    %esi,%ecx
52f8d5:	83 7e 44 10          	cmpl   $0x10,0x44(%esi)
52f8d9:	72 04                	jb     0x52f8df
52f8db:	8b 07                	mov    (%edi),%eax
52f8dd:	eb 02                	jmp    0x52f8e1
52f8df:	8b c7                	mov    %edi,%eax
52f8e1:	51                   	push   %ecx
52f8e2:	50                   	push   %eax
52f8e3:	e8 f3 3b ed ff       	call   0x4034db
52f8e8:	83 c4 08             	add    $0x8,%esp
52f8eb:	85 c0                	test   %eax,%eax
52f8ed:	78 0a                	js     0x52f8f9
52f8ef:	83 ef 30             	sub    $0x30,%edi
52f8f2:	83 ee 30             	sub    $0x30,%esi
52f8f5:	3b df                	cmp    %edi,%ebx
52f8f7:	72 aa                	jb     0x52f8a3
52f8f9:	8b 74 24 14          	mov    0x14(%esp),%esi
52f8fd:	3b ee                	cmp    %esi,%ebp
52f8ff:	73 55                	jae    0x52f956
52f901:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
52f905:	72 04                	jb     0x52f90b
52f907:	8b 07                	mov    (%edi),%eax
52f909:	eb 02                	jmp    0x52f90d
52f90b:	8b c7                	mov    %edi,%eax
52f90d:	83 7d 14 10          	cmpl   $0x10,0x14(%ebp)
52f911:	72 05                	jb     0x52f918
52f913:	8b 4d 00             	mov    0x0(%ebp),%ecx
52f916:	eb 02                	jmp    0x52f91a
52f918:	8b cd                	mov    %ebp,%ecx
52f91a:	50                   	push   %eax
52f91b:	51                   	push   %ecx
52f91c:	e8 ba 3b ed ff       	call   0x4034db
52f921:	83 c4 08             	add    $0x8,%esp
52f924:	85 c0                	test   %eax,%eax
52f926:	78 2e                	js     0x52f956
52f928:	83 7d 14 10          	cmpl   $0x10,0x14(%ebp)
52f92c:	72 05                	jb     0x52f933
52f92e:	8b 4d 00             	mov    0x0(%ebp),%ecx
52f931:	eb 02                	jmp    0x52f935
52f933:	8b cd                	mov    %ebp,%ecx
52f935:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
52f939:	72 04                	jb     0x52f93f
52f93b:	8b 07                	mov    (%edi),%eax
52f93d:	eb 02                	jmp    0x52f941
52f93f:	8b c7                	mov    %edi,%eax
52f941:	51                   	push   %ecx
52f942:	50                   	push   %eax
52f943:	e8 93 3b ed ff       	call   0x4034db
52f948:	83 c4 08             	add    $0x8,%esp
52f94b:	85 c0                	test   %eax,%eax
52f94d:	78 07                	js     0x52f956
52f94f:	83 c5 30             	add    $0x30,%ebp
52f952:	3b ee                	cmp    %esi,%ebp
52f954:	72 ab                	jb     0x52f901
52f956:	8b c7                	mov    %edi,%eax
52f958:	8b dd                	mov    %ebp,%ebx
52f95a:	89 44 24 10          	mov    %eax,0x10(%esp)
52f95e:	66 90                	xchg   %ax,%ax
52f960:	3b de                	cmp    %esi,%ebx
52f962:	0f 83 20 02 00 00    	jae    0x52fb88
52f968:	8d 75 fc             	lea    -0x4(%ebp),%esi
52f96b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
52f970:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
52f974:	72 04                	jb     0x52f97a
52f976:	8b 0b                	mov    (%ebx),%ecx
52f978:	eb 02                	jmp    0x52f97c
52f97a:	8b cb                	mov    %ebx,%ecx
52f97c:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
52f980:	72 04                	jb     0x52f986
52f982:	8b 07                	mov    (%edi),%eax
52f984:	eb 02                	jmp    0x52f988
52f986:	8b c7                	mov    %edi,%eax
52f988:	51                   	push   %ecx
52f989:	50                   	push   %eax
52f98a:	e8 4c 3b ed ff       	call   0x4034db
52f98f:	83 c4 08             	add    $0x8,%esp
52f992:	85 c0                	test   %eax,%eax
52f994:	0f 88 dd 01 00 00    	js     0x52fb77
52f99a:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
52f99e:	72 04                	jb     0x52f9a4
52f9a0:	8b 0f                	mov    (%edi),%ecx
52f9a2:	eb 02                	jmp    0x52f9a6
52f9a4:	8b cf                	mov    %edi,%ecx
52f9a6:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
52f9aa:	72 04                	jb     0x52f9b0
52f9ac:	8b 03                	mov    (%ebx),%eax
52f9ae:	eb 02                	jmp    0x52f9b2
52f9b0:	8b c3                	mov    %ebx,%eax
52f9b2:	51                   	push   %ecx
52f9b3:	50                   	push   %eax
52f9b4:	e8 22 3b ed ff       	call   0x4034db
52f9b9:	83 c4 08             	add    $0x8,%esp
52f9bc:	85 c0                	test   %eax,%eax
52f9be:	0f 88 c0 01 00 00    	js     0x52fb84
52f9c4:	8b c5                	mov    %ebp,%eax
52f9c6:	83 c6 30             	add    $0x30,%esi
52f9c9:	83 c5 30             	add    $0x30,%ebp
52f9cc:	89 6c 24 1c          	mov    %ebp,0x1c(%esp)
52f9d0:	3b c3                	cmp    %ebx,%eax
52f9d2:	0f 84 9f 01 00 00    	je     0x52fb77
52f9d8:	83 7e e8 10          	cmpl   $0x10,-0x18(%esi)
52f9dc:	c7 44 24 38 0f 00 00 	movl   $0xf,0x38(%esp)
52f9e3:	00
52f9e4:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%esp)
52f9eb:	00
52f9ec:	c6 44 24 24 00       	movb   $0x0,0x24(%esp)
52f9f1:	73 1c                	jae    0x52fa0f
52f9f3:	8b 46 e4             	mov    -0x1c(%esi),%eax
52f9f6:	83 c0 01             	add    $0x1,%eax
52f9f9:	74 22                	je     0x52fa1d
52f9fb:	50                   	push   %eax
52f9fc:	8d 46 d4             	lea    -0x2c(%esi),%eax
52f9ff:	50                   	push   %eax
52fa00:	8d 44 24 2c          	lea    0x2c(%esp),%eax
52fa04:	50                   	push   %eax
52fa05:	e8 78 f1 ee ff       	call   0x41eb82
52fa0a:	83 c4 0c             	add    $0xc,%esp
52fa0d:	eb 0e                	jmp    0x52fa1d
52fa0f:	8b 46 d4             	mov    -0x2c(%esi),%eax
52fa12:	89 44 24 24          	mov    %eax,0x24(%esp)
52fa16:	c7 46 d4 00 00 00 00 	movl   $0x0,-0x2c(%esi)
52fa1d:	8b 46 e4             	mov    -0x1c(%esi),%eax
52fa20:	8d 6e d4             	lea    -0x2c(%esi),%ebp
52fa23:	89 44 24 34          	mov    %eax,0x34(%esp)
52fa27:	8b 46 e8             	mov    -0x18(%esi),%eax
52fa2a:	c7 46 e8 0f 00 00 00 	movl   $0xf,-0x18(%esi)
52fa31:	83 7e e8 10          	cmpl   $0x10,-0x18(%esi)
52fa35:	89 44 24 38          	mov    %eax,0x38(%esp)
52fa39:	c7 46 e4 00 00 00 00 	movl   $0x0,-0x1c(%esi)
52fa40:	72 05                	jb     0x52fa47
52fa42:	8b 45 00             	mov    0x0(%ebp),%eax
52fa45:	eb 02                	jmp    0x52fa49
52fa47:	8b c5                	mov    %ebp,%eax
52fa49:	c6 00 00             	movb   $0x0,(%eax)
52fa4c:	83 3e 10             	cmpl   $0x10,(%esi)
52fa4f:	c7 44 24 50 0f 00 00 	movl   $0xf,0x50(%esp)
52fa56:	00
52fa57:	c7 44 24 4c 00 00 00 	movl   $0x0,0x4c(%esp)
52fa5e:	00
52fa5f:	c6 44 24 3c 00       	movb   $0x0,0x3c(%esp)
52fa64:	73 1c                	jae    0x52fa82
52fa66:	8b 46 fc             	mov    -0x4(%esi),%eax
52fa69:	83 c0 01             	add    $0x1,%eax
52fa6c:	74 22                	je     0x52fa90
52fa6e:	50                   	push   %eax
52fa6f:	8d 46 ec             	lea    -0x14(%esi),%eax
52fa72:	50                   	push   %eax
52fa73:	8d 44 24 44          	lea    0x44(%esp),%eax
52fa77:	50                   	push   %eax
52fa78:	e8 05 f1 ee ff       	call   0x41eb82
52fa7d:	83 c4 0c             	add    $0xc,%esp
52fa80:	eb 0e                	jmp    0x52fa90
52fa82:	8b 46 ec             	mov    -0x14(%esi),%eax
52fa85:	89 44 24 3c          	mov    %eax,0x3c(%esp)
52fa89:	c7 46 ec 00 00 00 00 	movl   $0x0,-0x14(%esi)
52fa90:	8b 46 fc             	mov    -0x4(%esi),%eax
52fa93:	89 44 24 4c          	mov    %eax,0x4c(%esp)
52fa97:	8b 06                	mov    (%esi),%eax
52fa99:	c7 06 0f 00 00 00    	movl   $0xf,(%esi)
52fa9f:	83 3e 10             	cmpl   $0x10,(%esi)
52faa2:	89 44 24 50          	mov    %eax,0x50(%esp)
52faa6:	c7 46 fc 00 00 00 00 	movl   $0x0,-0x4(%esi)
52faad:	72 05                	jb     0x52fab4
52faaf:	8b 46 ec             	mov    -0x14(%esi),%eax
52fab2:	eb 03                	jmp    0x52fab7
52fab4:	8d 46 ec             	lea    -0x14(%esi),%eax
52fab7:	53                   	push   %ebx
52fab8:	8b cd                	mov    %ebp,%ecx
52faba:	c6 00 00             	movb   $0x0,(%eax)
52fabd:	e8 24 1d f0 ff       	call   0x4317e6
52fac2:	8d 44 24 24          	lea    0x24(%esp),%eax
52fac6:	8b cb                	mov    %ebx,%ecx
52fac8:	50                   	push   %eax
52fac9:	e8 18 1d f0 ff       	call   0x4317e6
52face:	8b 44 24 50          	mov    0x50(%esp),%eax
52fad2:	83 f8 10             	cmp    $0x10,%eax
52fad5:	72 3f                	jb     0x52fb16
52fad7:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
52fadb:	40                   	inc    %eax
52fadc:	3d 00 10 00 00       	cmp    $0x1000,%eax
52fae1:	72 2a                	jb     0x52fb0d
52fae3:	f6 c1 1f             	test   $0x1f,%cl
52fae6:	0f 85 c2 01 00 00    	jne    0x52fcae
52faec:	8b 41 fc             	mov    -0x4(%ecx),%eax
52faef:	3b c1                	cmp    %ecx,%eax
52faf1:	0f 83 b7 01 00 00    	jae    0x52fcae
52faf7:	2b c8                	sub    %eax,%ecx
52faf9:	83 f9 04             	cmp    $0x4,%ecx
52fafc:	0f 82 ac 01 00 00    	jb     0x52fcae
52fb02:	83 f9 23             	cmp    $0x23,%ecx
52fb05:	0f 87 a3 01 00 00    	ja     0x52fcae
52fb0b:	8b c8                	mov    %eax,%ecx
52fb0d:	51                   	push   %ecx
52fb0e:	e8 7c 1c ed ff       	call   0x40178f
52fb13:	83 c4 04             	add    $0x4,%esp
52fb16:	8b 44 24 38          	mov    0x38(%esp),%eax
52fb1a:	c7 44 24 50 0f 00 00 	movl   $0xf,0x50(%esp)
52fb21:	00
52fb22:	c7 44 24 4c 00 00 00 	movl   $0x0,0x4c(%esp)
52fb29:	00
52fb2a:	c6 44 24 3c 00       	movb   $0x0,0x3c(%esp)
52fb2f:	83 f8 10             	cmp    $0x10,%eax
52fb32:	72 3f                	jb     0x52fb73
52fb34:	8b 4c 24 24          	mov    0x24(%esp),%ecx
52fb38:	40                   	inc    %eax
52fb39:	3d 00 10 00 00       	cmp    $0x1000,%eax
52fb3e:	72 2a                	jb     0x52fb6a